Azure staticwebapps

Udaiappa Ramachandran
Udaiappa RamachandranCTO, Akumina, Inc., em Akumina
Azure Static Web Apps
Udaiappa Ramachandran ( Udai )
https://udai.io
About me
• Udaiappa Ramachandran ( Udai )
• CTO-Akumina, Inc.
• Cloud Expert
• Microsoft Azure, Amazon Web Services, and Google
• New Hampshire Cloud User Group (http://www.meetup.com/nashuaug )
• https://udai.io
Agenda
• Introduction
• Key features
• API Support
• Configuration
• Security
• Demo…Demo…Demo…
Key features
• Web hosting
• Integrated API
• GitHub and Azure DevOps integration
• Globally distributed
• Free SSL certificates
• Custom domains
• Seamless security model
• Authentication provider integrations
• Customizable authorization role definition and assignments
• Back-end routing rules
• Generated staging versions
API Support
• Integrated security
• Seamless routing
• Managed functions
• Bring your own functions
API Support
Feature Managed Functions Bring your own Functions
Access to Azure Functions triggers Http only All
Supported Azure Functions runtimes Node.js 12, .NET Core 3.1
Python 3.8
All
Supported Azure Functions hosting plans Consumption Consumption,
Premium, Dedicated
Integrated security with direct access to user authentication and role-based authorization data ✔ ✔
Routing integration that makes the api route available to the web app securely without requiring custom CORS
rules.
✔ ✔
Durable Functions programming model ✕ ✔
Managed identity ✕ ✔
Azure App Service Authentication and Authorization token management ✕ ✔
API functions available outside Azure Static Web Apps ✕ ✔
Key Vault references ✕ ✔
Logging When enabled API Application Insight Application Insight
API Support – Constraints and Restrictions
• Constraints
• The API route prefix must be api.
• Route rules for API functions only support redirects and securing routes with roles
• Reserved Prefixes: APPSETTING_, AZUREBLOBSTORAGE_, AZUREFILESSTORAGE_,
AZURE_FUNCTION_, CONTAINER_, DIAGNOSTICS_, DOCKER_, FUNCTIONS_, IDENTITY_,
MACHINEKEY_, MAINSITE_, MSDEPLOY_, SCMSITE_, SCM_, WEBSITES_, WEBSITE_,
WEBSOCKET_, AzureWeb
• Authentication and authorization:
• Anonymous or Azure App Service Authentication and authorization provider v2
• Required public accessibility: Restricting the IP address, Restricting traffic through private link or
service endpoints need not apply
• Function access keys: if required must proved the key with calls from static app to the API
• Restrictions
• Only one Azure Functions app is available to a single static web app.
• The api_location value in the workflow configuration must be set to an empty string for BYOF.
• Only supported in the Static Web Apps production environment.
• While your Azure Functions app may respond to various triggers, the static web app can only
access functions via Http endpoints.
Configurations
• Application configuration using staticwebapp.config.json
• Routing
• Authentication
• Authorization
• Fallback rules
• HTTP response overrides
• Global HTTP header definitions
• Custom MIME types
• Networking
• Build configuration – Build process
• app_location, api_location, etc.,
• Application settings – for backend API
• Are available as environment variables to the backend API of a static web app
• Can be used to store secrets used in authentication configuration
• Are encrypted at rest
• Are copied to staging and production environments
• May only be alphanumeric characters, ., and _
Routing
Security
• Any user can authenticate with an enabled provider.
• Once logged in, users belong to the anonymous and authenticated roles by default.
• Authorized users gain access to restricted routes by rules defined in the
staticwebapp.config.json file.
• Users are assigned custom roles using the built-in invitations system.
• Users can be programmatically assigned custom roles at login by an API function.
• All authentication providers are enabled by default.
• To restrict an authentication provider, block access with a custom route rule.
• Pre-configured providers include:
• Azure Active Directory
• GitHub
• Twitter
• Custom Authentication provider
• Private Endpoint
• Key vault support
Demo
• Environment Setup
• Pre-Requisites, Tools
• App with API (Managed Function App)
• Deploy to Azure
• Monitoring
• Custom Domains
• Front Door integration
• Staging a site using Pull Request
• Routes
• Authentication/Authorization
• Bring Your Own Function App
• Updating Secret tokens
Local Debug:
npm install -g @azure/static-web-apps-cli
npm install -g azure-functions-core-tools@3
swa start src --api-location api
OR
User Live Server Addin
Reference
• Azure Static Web Apps: https://docs.microsoft.com/en-us/azure/static-web-apps/
1 de 12

Recomendados

Azure Web Apps Advanced Security por
Azure Web Apps Advanced SecurityAzure Web Apps Advanced Security
Azure Web Apps Advanced SecurityUdaiappa Ramachandran
666 visualizações15 slides
Azure functions serverless por
Azure functions serverlessAzure functions serverless
Azure functions serverlessUdaiappa Ramachandran
298 visualizações17 slides
Azure PaaS (WebApp & SQL Database) workshop solution por
Azure PaaS (WebApp & SQL Database) workshop solutionAzure PaaS (WebApp & SQL Database) workshop solution
Azure PaaS (WebApp & SQL Database) workshop solutionGelis Wu
697 visualizações31 slides
Azure signalr service por
Azure signalr serviceAzure signalr service
Azure signalr serviceUdaiappa Ramachandran
247 visualizações16 slides
Azure Automation and Update Management por
Azure Automation and Update ManagementAzure Automation and Update Management
Azure Automation and Update ManagementUdaiappa Ramachandran
509 visualizações14 slides
What is Azure development?-MS Azure development por
What is Azure development?-MS Azure development What is Azure development?-MS Azure development
What is Azure development?-MS Azure development Zabeel Institute
67 visualizações9 slides

Mais conteúdo relacionado

Mais procurados

Intro to Azure Static Web Apps por
Intro to Azure Static Web AppsIntro to Azure Static Web Apps
Intro to Azure Static Web AppsMoaid Hathot
245 visualizações18 slides
2 Speed IT powered by Microsoft Azure and Minecraft por
2 Speed IT powered by Microsoft Azure and Minecraft2 Speed IT powered by Microsoft Azure and Minecraft
2 Speed IT powered by Microsoft Azure and MinecraftSriram Hariharan
404 visualizações32 slides
Azure fundamental -Introduction por
Azure fundamental -IntroductionAzure fundamental -Introduction
Azure fundamental -IntroductionManishK55
541 visualizações33 slides
Building microservices on azure por
Building microservices on azureBuilding microservices on azure
Building microservices on azureVaibhav Gujral
152 visualizações32 slides
Zero credential development with managed identities por
Zero credential development with managed identitiesZero credential development with managed identities
Zero credential development with managed identitiesJoonas Westlin
238 visualizações27 slides
Develop enterprise-ready applications for Microsoft Teams por
Develop enterprise-ready applications for Microsoft TeamsDevelop enterprise-ready applications for Microsoft Teams
Develop enterprise-ready applications for Microsoft TeamsMarkus Moeller
166 visualizações28 slides

Mais procurados(20)

Intro to Azure Static Web Apps por Moaid Hathot
Intro to Azure Static Web AppsIntro to Azure Static Web Apps
Intro to Azure Static Web Apps
Moaid Hathot245 visualizações
2 Speed IT powered by Microsoft Azure and Minecraft por Sriram Hariharan
2 Speed IT powered by Microsoft Azure and Minecraft2 Speed IT powered by Microsoft Azure and Minecraft
2 Speed IT powered by Microsoft Azure and Minecraft
Sriram Hariharan404 visualizações
Azure fundamental -Introduction por ManishK55
Azure fundamental -IntroductionAzure fundamental -Introduction
Azure fundamental -Introduction
ManishK55541 visualizações
Building microservices on azure por Vaibhav Gujral
Building microservices on azureBuilding microservices on azure
Building microservices on azure
Vaibhav Gujral152 visualizações
Zero credential development with managed identities por Joonas Westlin
Zero credential development with managed identitiesZero credential development with managed identities
Zero credential development with managed identities
Joonas Westlin238 visualizações
Develop enterprise-ready applications for Microsoft Teams por Markus Moeller
Develop enterprise-ready applications for Microsoft TeamsDevelop enterprise-ready applications for Microsoft Teams
Develop enterprise-ready applications for Microsoft Teams
Markus Moeller166 visualizações
Azure sql introduction por ManishK55
Azure sql  introductionAzure sql  introduction
Azure sql introduction
ManishK55533 visualizações
Certification in Microsoft Azure por Daniel Toomey
Certification in Microsoft AzureCertification in Microsoft Azure
Certification in Microsoft Azure
Daniel Toomey1.1K visualizações
ECS 2018: Introduction to Azure Web Applications por Eric Shupps
ECS 2018: Introduction to Azure Web ApplicationsECS 2018: Introduction to Azure Web Applications
ECS 2018: Introduction to Azure Web Applications
Eric Shupps257 visualizações
Azure web apps por Vaibhav Gujral
Azure web appsAzure web apps
Azure web apps
Vaibhav Gujral596 visualizações
Durable Azure Functions por Pushkar Saraf
Durable Azure FunctionsDurable Azure Functions
Durable Azure Functions
Pushkar Saraf137 visualizações
Office Development Licensing, Deployment and ALM por Eric Shupps
Office Development Licensing, Deployment and ALMOffice Development Licensing, Deployment and ALM
Office Development Licensing, Deployment and ALM
Eric Shupps413 visualizações
Building a document e-signing workflow with Azure Durable Functions por Joonas Westlin
Building a document e-signing workflow with Azure Durable FunctionsBuilding a document e-signing workflow with Azure Durable Functions
Building a document e-signing workflow with Azure Durable Functions
Joonas Westlin443 visualizações
Windows Azure Active Directory por Pavel Revenkov
Windows Azure Active DirectoryWindows Azure Active Directory
Windows Azure Active Directory
Pavel Revenkov1.6K visualizações
Microsoft Azure News - Dec 2016 por Daniel Toomey
Microsoft Azure News - Dec 2016Microsoft Azure News - Dec 2016
Microsoft Azure News - Dec 2016
Daniel Toomey192 visualizações
O365Con18 - Connect SharePoint Framework Solutions to API's secured with Azur... por NCCOMMS
O365Con18 - Connect SharePoint Framework Solutions to API's secured with Azur...O365Con18 - Connect SharePoint Framework Solutions to API's secured with Azur...
O365Con18 - Connect SharePoint Framework Solutions to API's secured with Azur...
NCCOMMS73 visualizações
Azure: PaaS or IaaS por Shahed Chowdhuri
Azure: PaaS or IaaSAzure: PaaS or IaaS
Azure: PaaS or IaaS
Shahed Chowdhuri6.6K visualizações
Tokyo azure meetup #8 - Azure Update, August por Kanio Dimitrov
Tokyo azure meetup #8 - Azure Update, AugustTokyo azure meetup #8 - Azure Update, August
Tokyo azure meetup #8 - Azure Update, August
Kanio Dimitrov114 visualizações

Similar a Azure staticwebapps

How to build a serverless helmet detection system por
How to build a serverless helmet detection systemHow to build a serverless helmet detection system
How to build a serverless helmet detection systemMandar Dharmadhikari
157 visualizações18 slides
Tokyo azure meetup #8 azure update, august por
Tokyo azure meetup #8   azure update, augustTokyo azure meetup #8   azure update, august
Tokyo azure meetup #8 azure update, augustTokyo Azure Meetup
105 visualizações30 slides
Logic apps and PowerApps - Integrate across your APIs por
Logic apps and PowerApps - Integrate across your APIsLogic apps and PowerApps - Integrate across your APIs
Logic apps and PowerApps - Integrate across your APIsSriram Hariharan
6.4K visualizações34 slides
Tokyo Azure Meetup #7 - Introduction to Serverless Architectures with Azure F... por
Tokyo Azure Meetup #7 - Introduction to Serverless Architectures with Azure F...Tokyo Azure Meetup #7 - Introduction to Serverless Architectures with Azure F...
Tokyo Azure Meetup #7 - Introduction to Serverless Architectures with Azure F...Tokyo Azure Meetup
1.4K visualizações48 slides
Azure API Management por
Azure API ManagementAzure API Management
Azure API Managementjeremysbrown
1.5K visualizações14 slides
Azure Functions 101 por
Azure Functions 101Azure Functions 101
Azure Functions 101Martin Abbott
385 visualizações21 slides

Similar a Azure staticwebapps(20)

How to build a serverless helmet detection system por Mandar Dharmadhikari
How to build a serverless helmet detection systemHow to build a serverless helmet detection system
How to build a serverless helmet detection system
Mandar Dharmadhikari157 visualizações
Tokyo azure meetup #8 azure update, august por Tokyo Azure Meetup
Tokyo azure meetup #8   azure update, augustTokyo azure meetup #8   azure update, august
Tokyo azure meetup #8 azure update, august
Tokyo Azure Meetup105 visualizações
Logic apps and PowerApps - Integrate across your APIs por Sriram Hariharan
Logic apps and PowerApps - Integrate across your APIsLogic apps and PowerApps - Integrate across your APIs
Logic apps and PowerApps - Integrate across your APIs
Sriram Hariharan6.4K visualizações
Tokyo Azure Meetup #7 - Introduction to Serverless Architectures with Azure F... por Tokyo Azure Meetup
Tokyo Azure Meetup #7 - Introduction to Serverless Architectures with Azure F...Tokyo Azure Meetup #7 - Introduction to Serverless Architectures with Azure F...
Tokyo Azure Meetup #7 - Introduction to Serverless Architectures with Azure F...
Tokyo Azure Meetup1.4K visualizações
Azure API Management por jeremysbrown
Azure API ManagementAzure API Management
Azure API Management
jeremysbrown1.5K visualizações
Azure Functions 101 por Martin Abbott
Azure Functions 101Azure Functions 101
Azure Functions 101
Martin Abbott385 visualizações
Developing Apps for SharePoint Store por Kashif Imran
Developing Apps for SharePoint StoreDeveloping Apps for SharePoint Store
Developing Apps for SharePoint Store
Kashif Imran1K visualizações
Api management update for optus por sflynn073
Api management update for optusApi management update for optus
Api management update for optus
sflynn0731.3K visualizações
World Azure Day Mobile Services Presentation por Dmitri Artamonov
World Azure Day Mobile Services PresentationWorld Azure Day Mobile Services Presentation
World Azure Day Mobile Services Presentation
Dmitri Artamonov1.1K visualizações
Hidden Gems of Azure Websites: The Secret of Kudu por Juv Chan
Hidden Gems of Azure Websites: The Secret of KuduHidden Gems of Azure Websites: The Secret of Kudu
Hidden Gems of Azure Websites: The Secret of Kudu
Juv Chan456 visualizações
Good Bye Credentials in Code, Welcome Azure Managed Identities por Kasun Kodagoda
Good Bye Credentials in Code, Welcome Azure Managed IdentitiesGood Bye Credentials in Code, Welcome Azure Managed Identities
Good Bye Credentials in Code, Welcome Azure Managed Identities
Kasun Kodagoda1.1K visualizações
Global Azure 2022 - Architecting Modern Serverless APIs with Azure Functions ... por Callon Campbell
Global Azure 2022 - Architecting Modern Serverless APIs with Azure Functions ...Global Azure 2022 - Architecting Modern Serverless APIs with Azure Functions ...
Global Azure 2022 - Architecting Modern Serverless APIs with Azure Functions ...
Callon Campbell30 visualizações
Exposing services with Azure API Management por Callon Campbell
Exposing services with Azure API ManagementExposing services with Azure API Management
Exposing services with Azure API Management
Callon Campbell613 visualizações
Zure Azure PaaS Zero to Hero - DevOps training day por Okko Oulasvirta
Zure Azure PaaS Zero to Hero - DevOps training dayZure Azure PaaS Zero to Hero - DevOps training day
Zure Azure PaaS Zero to Hero - DevOps training day
Okko Oulasvirta314 visualizações
Azure Functions in Action #OrlandoCC por Baskar rao Dsn
Azure Functions in Action #OrlandoCCAzure Functions in Action #OrlandoCC
Azure Functions in Action #OrlandoCC
Baskar rao Dsn140 visualizações
NIC - Windows Azure Pack - Level 300 por Kristian Nese
NIC - Windows Azure Pack - Level 300NIC - Windows Azure Pack - Level 300
NIC - Windows Azure Pack - Level 300
Kristian Nese6.3K visualizações
Configuration in azure done right por Rick van den Bosch
Configuration in azure done rightConfiguration in azure done right
Configuration in azure done right
Rick van den Bosch353 visualizações
First Look at Azure Logic Apps (BAUG) por Daniel Toomey
First Look at Azure Logic Apps (BAUG)First Look at Azure Logic Apps (BAUG)
First Look at Azure Logic Apps (BAUG)
Daniel Toomey738 visualizações
Process Orchestration with Flowable and Spring Boot por Chavdar Baikov
Process Orchestration with Flowable and Spring BootProcess Orchestration with Flowable and Spring Boot
Process Orchestration with Flowable and Spring Boot
Chavdar Baikov738 visualizações
Tokyo Azure Meetup #14 - Azure Functions Proxies por Tokyo Azure Meetup
Tokyo Azure Meetup #14  -  Azure Functions ProxiesTokyo Azure Meetup #14  -  Azure Functions Proxies
Tokyo Azure Meetup #14 - Azure Functions Proxies
Tokyo Azure Meetup626 visualizações

Mais de Udaiappa Ramachandran

Vector Search using OpenAI in Azure Cognitive Search.pptx por
Vector Search using OpenAI in Azure Cognitive Search.pptxVector Search using OpenAI in Azure Cognitive Search.pptx
Vector Search using OpenAI in Azure Cognitive Search.pptxUdaiappa Ramachandran
11 visualizações16 slides
AzureOpenAI.pptx por
AzureOpenAI.pptxAzureOpenAI.pptx
AzureOpenAI.pptxUdaiappa Ramachandran
535 visualizações16 slides
OpenAI-Copilot-ChatGPT.pptx por
OpenAI-Copilot-ChatGPT.pptxOpenAI-Copilot-ChatGPT.pptx
OpenAI-Copilot-ChatGPT.pptxUdaiappa Ramachandran
548 visualizações13 slides
DiagnoseAndSolveproblems.pptx por
DiagnoseAndSolveproblems.pptxDiagnoseAndSolveproblems.pptx
DiagnoseAndSolveproblems.pptxUdaiappa Ramachandran
32 visualizações9 slides
MAUI.pptx por
MAUI.pptxMAUI.pptx
MAUI.pptxUdaiappa Ramachandran
75 visualizações10 slides
CosmosDB.pptx por
CosmosDB.pptxCosmosDB.pptx
CosmosDB.pptxUdaiappa Ramachandran
25 visualizações18 slides

Mais de Udaiappa Ramachandran(20)

Vector Search using OpenAI in Azure Cognitive Search.pptx por Udaiappa Ramachandran
Vector Search using OpenAI in Azure Cognitive Search.pptxVector Search using OpenAI in Azure Cognitive Search.pptx
Vector Search using OpenAI in Azure Cognitive Search.pptx
Udaiappa Ramachandran11 visualizações
Knowledge Mining With Azure Search por Udaiappa Ramachandran
Knowledge Mining With Azure SearchKnowledge Mining With Azure Search
Knowledge Mining With Azure Search
Udaiappa Ramachandran158 visualizações
Data Encryption - Azure Storage Service por Udaiappa Ramachandran
Data Encryption - Azure Storage ServiceData Encryption - Azure Storage Service
Data Encryption - Azure Storage Service
Udaiappa Ramachandran565 visualizações

Último

ChatGPT and AI for Web Developers por
ChatGPT and AI for Web DevelopersChatGPT and AI for Web Developers
ChatGPT and AI for Web DevelopersMaximiliano Firtman
174 visualizações82 slides
The Importance of Cybersecurity for Digital Transformation por
The Importance of Cybersecurity for Digital TransformationThe Importance of Cybersecurity for Digital Transformation
The Importance of Cybersecurity for Digital TransformationNUS-ISS
25 visualizações26 slides
MemVerge: Memory Viewer Software por
MemVerge: Memory Viewer SoftwareMemVerge: Memory Viewer Software
MemVerge: Memory Viewer SoftwareCXL Forum
118 visualizações10 slides
Microchip: CXL Use Cases and Enabling Ecosystem por
Microchip: CXL Use Cases and Enabling EcosystemMicrochip: CXL Use Cases and Enabling Ecosystem
Microchip: CXL Use Cases and Enabling EcosystemCXL Forum
129 visualizações12 slides
.conf Go 2023 - Data analysis as a routine por
.conf Go 2023 - Data analysis as a routine.conf Go 2023 - Data analysis as a routine
.conf Go 2023 - Data analysis as a routineSplunk
90 visualizações12 slides
Upskilling the Evolving Workforce with Digital Fluency for Tomorrow's Challen... por
Upskilling the Evolving Workforce with Digital Fluency for Tomorrow's Challen...Upskilling the Evolving Workforce with Digital Fluency for Tomorrow's Challen...
Upskilling the Evolving Workforce with Digital Fluency for Tomorrow's Challen...NUS-ISS
23 visualizações70 slides

Último(20)

ChatGPT and AI for Web Developers por Maximiliano Firtman
ChatGPT and AI for Web DevelopersChatGPT and AI for Web Developers
ChatGPT and AI for Web Developers
Maximiliano Firtman174 visualizações
The Importance of Cybersecurity for Digital Transformation por NUS-ISS
The Importance of Cybersecurity for Digital TransformationThe Importance of Cybersecurity for Digital Transformation
The Importance of Cybersecurity for Digital Transformation
NUS-ISS25 visualizações
MemVerge: Memory Viewer Software por CXL Forum
MemVerge: Memory Viewer SoftwareMemVerge: Memory Viewer Software
MemVerge: Memory Viewer Software
CXL Forum118 visualizações
Microchip: CXL Use Cases and Enabling Ecosystem por CXL Forum
Microchip: CXL Use Cases and Enabling EcosystemMicrochip: CXL Use Cases and Enabling Ecosystem
Microchip: CXL Use Cases and Enabling Ecosystem
CXL Forum129 visualizações
.conf Go 2023 - Data analysis as a routine por Splunk
.conf Go 2023 - Data analysis as a routine.conf Go 2023 - Data analysis as a routine
.conf Go 2023 - Data analysis as a routine
Splunk90 visualizações
Upskilling the Evolving Workforce with Digital Fluency for Tomorrow's Challen... por NUS-ISS
Upskilling the Evolving Workforce with Digital Fluency for Tomorrow's Challen...Upskilling the Evolving Workforce with Digital Fluency for Tomorrow's Challen...
Upskilling the Evolving Workforce with Digital Fluency for Tomorrow's Challen...
NUS-ISS23 visualizações
"Thriving Culture in a Product Company — Practical Story", Volodymyr Tsukur por Fwdays
"Thriving Culture in a Product Company — Practical Story", Volodymyr Tsukur"Thriving Culture in a Product Company — Practical Story", Volodymyr Tsukur
"Thriving Culture in a Product Company — Practical Story", Volodymyr Tsukur
Fwdays40 visualizações
Understanding GenAI/LLM and What is Google Offering - Felix Goh por NUS-ISS
Understanding GenAI/LLM and What is Google Offering - Felix GohUnderstanding GenAI/LLM and What is Google Offering - Felix Goh
Understanding GenAI/LLM and What is Google Offering - Felix Goh
NUS-ISS39 visualizações
Five Things You SHOULD Know About Postman por Postman
Five Things You SHOULD Know About PostmanFive Things You SHOULD Know About Postman
Five Things You SHOULD Know About Postman
Postman25 visualizações
Tunable Laser (1).pptx por Hajira Mahmood
Tunable Laser (1).pptxTunable Laser (1).pptx
Tunable Laser (1).pptx
Hajira Mahmood21 visualizações
The details of description: Techniques, tips, and tangents on alternative tex... por BookNet Canada
The details of description: Techniques, tips, and tangents on alternative tex...The details of description: Techniques, tips, and tangents on alternative tex...
The details of description: Techniques, tips, and tangents on alternative tex...
BookNet Canada110 visualizações
"Fast Start to Building on AWS", Igor Ivaniuk por Fwdays
"Fast Start to Building on AWS", Igor Ivaniuk"Fast Start to Building on AWS", Igor Ivaniuk
"Fast Start to Building on AWS", Igor Ivaniuk
Fwdays36 visualizações
AI: mind, matter, meaning, metaphors, being, becoming, life values por Twain Liu 刘秋艳
AI: mind, matter, meaning, metaphors, being, becoming, life valuesAI: mind, matter, meaning, metaphors, being, becoming, life values
AI: mind, matter, meaning, metaphors, being, becoming, life values
Twain Liu 刘秋艳34 visualizações
GigaIO: The March of Composability Onward to Memory with CXL por CXL Forum
GigaIO: The March of Composability Onward to Memory with CXLGigaIO: The March of Composability Onward to Memory with CXL
GigaIO: The March of Composability Onward to Memory with CXL
CXL Forum126 visualizações
Webinar : Competing for tomorrow’s leaders – How MENA insurers can win the wa... por The Digital Insurer
Webinar : Competing for tomorrow’s leaders – How MENA insurers can win the wa...Webinar : Competing for tomorrow’s leaders – How MENA insurers can win the wa...
Webinar : Competing for tomorrow’s leaders – How MENA insurers can win the wa...
The Digital Insurer28 visualizações
MemVerge: Gismo (Global IO-free Shared Memory Objects) por CXL Forum
MemVerge: Gismo (Global IO-free Shared Memory Objects)MemVerge: Gismo (Global IO-free Shared Memory Objects)
MemVerge: Gismo (Global IO-free Shared Memory Objects)
CXL Forum112 visualizações
Photowave Presentation Slides - 11.8.23.pptx por CXL Forum
Photowave Presentation Slides - 11.8.23.pptxPhotowave Presentation Slides - 11.8.23.pptx
Photowave Presentation Slides - 11.8.23.pptx
CXL Forum126 visualizações
"How we switched to Kanban and how it integrates with product planning", Vady... por Fwdays
"How we switched to Kanban and how it integrates with product planning", Vady..."How we switched to Kanban and how it integrates with product planning", Vady...
"How we switched to Kanban and how it integrates with product planning", Vady...
Fwdays61 visualizações
AMD: 4th Generation EPYC CXL Demo por CXL Forum
AMD: 4th Generation EPYC CXL DemoAMD: 4th Generation EPYC CXL Demo
AMD: 4th Generation EPYC CXL Demo
CXL Forum126 visualizações

Azure staticwebapps

  • 1. Azure Static Web Apps Udaiappa Ramachandran ( Udai ) https://udai.io
  • 2. About me • Udaiappa Ramachandran ( Udai ) • CTO-Akumina, Inc. • Cloud Expert • Microsoft Azure, Amazon Web Services, and Google • New Hampshire Cloud User Group (http://www.meetup.com/nashuaug ) • https://udai.io
  • 3. Agenda • Introduction • Key features • API Support • Configuration • Security • Demo…Demo…Demo…
  • 4. Key features • Web hosting • Integrated API • GitHub and Azure DevOps integration • Globally distributed • Free SSL certificates • Custom domains • Seamless security model • Authentication provider integrations • Customizable authorization role definition and assignments • Back-end routing rules • Generated staging versions
  • 5. API Support • Integrated security • Seamless routing • Managed functions • Bring your own functions
  • 6. API Support Feature Managed Functions Bring your own Functions Access to Azure Functions triggers Http only All Supported Azure Functions runtimes Node.js 12, .NET Core 3.1 Python 3.8 All Supported Azure Functions hosting plans Consumption Consumption, Premium, Dedicated Integrated security with direct access to user authentication and role-based authorization data ✔ ✔ Routing integration that makes the api route available to the web app securely without requiring custom CORS rules. ✔ ✔ Durable Functions programming model ✕ ✔ Managed identity ✕ ✔ Azure App Service Authentication and Authorization token management ✕ ✔ API functions available outside Azure Static Web Apps ✕ ✔ Key Vault references ✕ ✔ Logging When enabled API Application Insight Application Insight
  • 7. API Support – Constraints and Restrictions • Constraints • The API route prefix must be api. • Route rules for API functions only support redirects and securing routes with roles • Reserved Prefixes: APPSETTING_, AZUREBLOBSTORAGE_, AZUREFILESSTORAGE_, AZURE_FUNCTION_, CONTAINER_, DIAGNOSTICS_, DOCKER_, FUNCTIONS_, IDENTITY_, MACHINEKEY_, MAINSITE_, MSDEPLOY_, SCMSITE_, SCM_, WEBSITES_, WEBSITE_, WEBSOCKET_, AzureWeb • Authentication and authorization: • Anonymous or Azure App Service Authentication and authorization provider v2 • Required public accessibility: Restricting the IP address, Restricting traffic through private link or service endpoints need not apply • Function access keys: if required must proved the key with calls from static app to the API • Restrictions • Only one Azure Functions app is available to a single static web app. • The api_location value in the workflow configuration must be set to an empty string for BYOF. • Only supported in the Static Web Apps production environment. • While your Azure Functions app may respond to various triggers, the static web app can only access functions via Http endpoints.
  • 8. Configurations • Application configuration using staticwebapp.config.json • Routing • Authentication • Authorization • Fallback rules • HTTP response overrides • Global HTTP header definitions • Custom MIME types • Networking • Build configuration – Build process • app_location, api_location, etc., • Application settings – for backend API • Are available as environment variables to the backend API of a static web app • Can be used to store secrets used in authentication configuration • Are encrypted at rest • Are copied to staging and production environments • May only be alphanumeric characters, ., and _
  • 10. Security • Any user can authenticate with an enabled provider. • Once logged in, users belong to the anonymous and authenticated roles by default. • Authorized users gain access to restricted routes by rules defined in the staticwebapp.config.json file. • Users are assigned custom roles using the built-in invitations system. • Users can be programmatically assigned custom roles at login by an API function. • All authentication providers are enabled by default. • To restrict an authentication provider, block access with a custom route rule. • Pre-configured providers include: • Azure Active Directory • GitHub • Twitter • Custom Authentication provider • Private Endpoint • Key vault support
  • 11. Demo • Environment Setup • Pre-Requisites, Tools • App with API (Managed Function App) • Deploy to Azure • Monitoring • Custom Domains • Front Door integration • Staging a site using Pull Request • Routes • Authentication/Authorization • Bring Your Own Function App • Updating Secret tokens Local Debug: npm install -g @azure/static-web-apps-cli npm install -g azure-functions-core-tools@3 swa start src --api-location api OR User Live Server Addin
  • 12. Reference • Azure Static Web Apps: https://docs.microsoft.com/en-us/azure/static-web-apps/

Notas do Editor

  1. Web hosting for static content like HTML, CSS, JavaScript, and images. Integrated API support provided by Azure Functions with the option to link an existing Azure Functions app using a standard account. First-class GitHub and Azure DevOps integration where repository changes trigger builds and deployments. Globally distributed static content, putting content closer to your users. Free SSL certificates, which are automatically renewed. Custom domains to provide branded customizations to your app. Seamless security model with a reverse-proxy when calling APIs, which requires no CORS configuration. Authentication provider integrations with Azure Active Directory, GitHub, and Twitter. Customizable authorization role definition and assignments. Back-end routing rules enabling full control over the content and routes you serve. Generated staging versions powered by pull requests enabling preview versions of your site before publishing.
  2. Integrated security with direct access to user authentication and role-based authorization data. Seamless routing that makes the api route available to the web app securely without requiring custom CORS rules. Managed functions: By default, the API of a static web app is an Azure Functions application managed and deployed by Azure Static Web Apps associated with some restrictions. Bring your own functions: Optionally, you can provide an existing Azure Functions application of any plan type, which is accompanied by all the features of Azure Functions. With this configuration, you're responsible to handle a separate deployment for the Functions app.
  3. Configuration Managed functions: While the api route is fixed, you have control over the source code folder location of the managed functions app. You can change this location by editing the workflow YAML file located in your repository's .github/workflows folder. Bring your own functions: Requests to the api route are sent to your existing Azure Functions app. Constraints The API route prefix must be api. Route rules for API functions only support redirects and securing routes with roles. Deployments Managed functions: APPSETTING_, AZUREBLOBSTORAGE_, AZUREFILESSTORAGE_, AZURE_FUNCTION_, CONTAINER_, DIAGNOSTICS_, DOCKER_, FUNCTIONS_, IDENTITY_, MACHINEKEY_, MAINSITE_, MSDEPLOY_, SCMSITE_, SCM_, WEBSITES_, WEBSITE_, WEBSOCKET_, AzureWeb Bring your own functions: You are responsible to manage the Functions app deployment.
  4. Application configuration: Define rules in the staticwebapp.config.json file to control application behavior and features. Use this file to define route and security rules, custom headers, and networking settings. Build configuration: Define settings that control the build process. Application settings: Set application-level settings and environment variables that can be used by backend APIs.
  5. Application configuration: Define rules in the staticwebapp.config.json file to control application behavior and features. Use this file to define route and security rules, custom headers, and networking settings. Build configuration: Define settings that control the build process. Application settings: Set application-level settings and environment variables that can be used by backend APIs.
  6. Controlled in routes config
  7. F1Settings Open with live server If error occurred, make sure to set “Use Local IP as Host” to true https://github.com/login?return_to=/staticwebdev/vanilla-basic/generate npm install -g @azure/static-web-apps-cli npm install -g azure-functions-core-tools@3 swa start src --api-location api local.settings.json file and name it local.settings.properties.json.