{"id":993,"date":"2019-12-03T22:43:21","date_gmt":"2019-12-03T22:43:21","guid":{"rendered":"https:\/\/sky-it.ro\/clone\/?page_id=993"},"modified":"2021-08-06T11:09:08","modified_gmt":"2021-08-06T11:09:08","slug":"course-20487d-developing-microsoft-azure-and-web-services","status":"publish","type":"page","link":"https:\/\/sky-it.ro\/clone\/course-20487d-developing-microsoft-azure-and-web-services\/","title":{"rendered":"Course 20487D: Developing Microsoft Azure and Web Services"},"content":{"rendered":"<p>[vc_row css_animation=&#8221;&#8221; row_type=&#8221;row&#8221; use_row_as_full_screen_section=&#8221;no&#8221; type=&#8221;grid&#8221; angled_section=&#8221;no&#8221; text_align=&#8221;left&#8221; background_image_as_pattern=&#8221;without_pattern&#8221; z_index=&#8221;&#8221; padding_top=&#8221;44&#8243; padding_bottom=&#8221;44&#8243;][vc_column width=&#8221;2\/3&#8243;][vc_row_inner row_type=&#8221;row&#8221; type=&#8221;full_width&#8221; text_align=&#8221;left&#8221; css_animation=&#8221;&#8221;][vc_column_inner width=&#8221;1\/3&#8243;][vc_column_text]<\/p>\n<h5>Durata: <span style=\"color: gray;\">5 zile<\/span><\/h5>\n<p>[\/vc_column_text][\/vc_column_inner][vc_column_inner width=&#8221;1\/3&#8243;][vc_column_text]<\/p>\n<h5>Pret:\u00a0<span style=\"color: gray;\">Solicita oferta!<\/span><\/h5>\n<p>[\/vc_column_text][\/vc_column_inner][vc_column_inner width=&#8221;1\/3&#8243;][vc_column_text]<\/p>\n<h5>Nivel: <span style=\"color: gray;\">intermediar<\/span><\/h5>\n<p>[\/vc_column_text][\/vc_column_inner][\/vc_row_inner][vc_separator type=&#8221;transparent&#8221; up=&#8221;44&#8243;]<div class=\"qode-advanced-tabs qode-advanced-tabs qode-advanced-horizontal-tab clearfix qode-advanced-tab-without-icon qode-advanced-tabs-column-3 clearfix\">\n\t<ul class=\"qode-advanced-tabs-nav\">\n\t\t\t\t\t<li>\n\t\t\t\t<h3>\n\t\t\t\t\t<a href=\"#tab-overview\">\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"qode-advanced-tab-text-after-icon\">\n\t\t\t\t\t\t\t\tOverview\t\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t<\/h3>\n\t\t\t<\/li>\n\t\t\t\t\t<li>\n\t\t\t\t<h3>\n\t\t\t\t\t<a href=\"#tab-course-details\">\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"qode-advanced-tab-text-after-icon\">\n\t\t\t\t\t\t\t\tCourse details\t\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t<\/h3>\n\t\t\t<\/li>\n\t\t\t\t\t<li>\n\t\t\t\t<h3>\n\t\t\t\t\t<a href=\"#tab-prerequisites\">\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"qode-advanced-tab-text-after-icon\">\n\t\t\t\t\t\t\t\tPrerequisites\t\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t<\/h3>\n\t\t\t<\/li>\n\t\t\t<\/ul>\n\t<div class=\"qode-advanced-tab-container\" id=\"tab-overview-379\" data-icon-pack=\"\" data-icon-html=\"\">[vc_column_text]<\/p>\n<div class=\"courseAbout\">\n<p><span class=\"DetailPagesContentHeading2\">About this course<\/span><\/p>\n<div class=\"courseAboutLangTrue\" lang=\"en\">\n<div>In this course, students will learn how to design and develop services that access local and remote data from various sources. Students will also learn how to develop and deploy services to hybrid environments, including on-premises servers and Microsoft Azure.<\/div>\n<\/div>\n<\/div>\n<div class=\"courseAudienceProfile\">\n<p><span class=\"DetailPagesContentHeading2\">Audience profile<\/span><\/p>\n<div class=\"courseAPLangTrue\" lang=\"en\">\n<div>Primary: .NET developers who want to learn how to develop services and deploy them to hybrid environments.<br \/>\nSecondary: .NET developers with Web application development experience who are exploring developing new applications or porting existing applications to Microsoft Azure.<\/div>\n<\/div>\n<\/div>\n<div class=\"courseAtCompletion\">\n<p><span class=\"DetailPagesContentHeading2\">At course completion<\/span><\/p>\n<div class=\"courseACLangTrue\" lang=\"en\">\n<div>\n<p>After completing this course, students will be able to:<\/p>\n<ul>\n<li>Describe the basic concepts of service development and data access strategies using the .NET platform.<\/li>\n<li>Describe the Microsoft Azure cloud platform and its compute, data, and application hosting offerings.<\/li>\n<li>Design and develop a data-centric application using Visual Studio 2017 and Entity Framework Core.<\/li>\n<li>Design, implement, and consume HTTP services using ASP.NET Core.<\/li>\n<li>Extend HTTP services using ASP.NET Core.<\/li>\n<li>Host services on-premises and in Microsoft Azure.<\/li>\n<li>Deploy services to both on-premises and cloud environments and manage the interface and policy for their services.<\/li>\n<li>Choose a data storage solution, cache, distribute, and synchronize data.<\/li>\n<li>Monitor, log, and troubleshoot services.<\/li>\n<li>Describe claim-based identity concepts and standards, and implement authentication and authorization with Azure Active Directory.<\/li>\n<li>Create scalable service applications.<\/li>\n<\/ul>\n<\/div>\n<\/div>\n<\/div>\n<p>[\/vc_column_text]<\/div><div class=\"qode-advanced-tab-container\" id=\"tab-course-details-229\" data-icon-pack=\"\" data-icon-html=\"\">[vc_column_text]<span class=\"DetailPagesContentUberHeading\">Course Outline<\/span><span class=\"DetailPagesContentLeadIn\">Module 1: Overview of service and cloud technologies<\/span><span class=\"DetailPagesContentText\">This module provides an overview of service and cloud technologies using the Microsoft .NET Core and the Azure. The first lesson, \u201cKey Components of Distributed Applications,\u201d discusses characteristics that are common to distributed systems, regardless of the technologies they use. Lesson 2, \u201cData and Data Access Technologies\u201d describes how data is used in distributed applications. Lesson 3, \u201cService Technologies,\u201d discusses two of the most common protocols in distributed system and the .NET Core technologies used to develop services based on those protocols. Lesson 4, \u201cCloud Computing,\u201d describes cloud computing and how it is implemented in Azure.<\/span><span class=\"DetailPagesContentHeading1\">Lessons <\/span><\/p>\n<ul class=\"DetailPagesContentUnorderedList\">\n<li class=\"DetailPagesContentListItem\">Key Components of Distributed Applications<\/li>\n<li class=\"DetailPagesContentListItem\">Data and Data Access Technologies<\/li>\n<li class=\"DetailPagesContentListItem\">Service Technologies<\/li>\n<li class=\"DetailPagesContentListItem\">Cloud Computing<\/li>\n<li class=\"DetailPagesContentListItem\">Manipulating Data<\/li>\n<\/ul>\n<p><span class=\"DetailPagesContentLeadIn\">Lab : Exploring the Work Environment<\/span><\/p>\n<ul class=\"DetailPagesContentUnorderedList\">\n<li class=\"DetailPagesContentListItem\">Creating an ASP.NET Core project<\/li>\n<li class=\"DetailPagesContentListItem\">Create a simple Entity Framework model<\/li>\n<li class=\"DetailPagesContentListItem\">Create a web API class<\/li>\n<li class=\"DetailPagesContentListItem\">Deploy the web application to Azure<\/li>\n<\/ul>\n<p>After completing this module, students will be able to:<\/p>\n<ul>\n<li>Explain services architecture and hosting environments<\/li>\n<li>Explain cloud computing and the Microsoft Azure cloud platform<\/li>\n<li>Explain data access strategies<\/li>\n<\/ul>\n<p><span class=\"DetailPagesContentLeadIn\">Module 2: Querying and Manipulating Data Using Entity Framework<\/span><span class=\"DetailPagesContentText\">In this module, you will learn about the Entity Framework data model, and about how to create, read, update, and delete data. Entity Framework is a rich object-relational mapper, which provides a convenient and powerful application programming interface (API) to manipulate data. This module focuses on the Code First approach with Entity Framework.<\/span><span class=\"DetailPagesContentHeading1\">Lessons <\/span><\/p>\n<ul class=\"DetailPagesContentUnorderedList\">\n<li class=\"DetailPagesContentListItem\">ADO.NET Overview<\/li>\n<li class=\"DetailPagesContentListItem\">Creating an Entity Data Model<\/li>\n<li class=\"DetailPagesContentListItem\">Querying Data<\/li>\n<\/ul>\n<p><span class=\"DetailPagesContentLeadIn\">Lab : Creating a Data Access Layer using Entity Framework<\/span><\/p>\n<ul class=\"DetailPagesContentUnorderedList\">\n<li class=\"DetailPagesContentListItem\">Creating a data model<\/li>\n<li class=\"DetailPagesContentListItem\">Query the Database<\/li>\n<\/ul>\n<p><span class=\"DetailPagesContentLeadIn\">Lab : Manipulating Data<\/span><\/p>\n<ul class=\"DetailPagesContentUnorderedList\">\n<li class=\"DetailPagesContentListItem\">Create repository methods<\/li>\n<li class=\"DetailPagesContentListItem\">Test the model using SQL Server and SQLite<\/li>\n<\/ul>\n<p>After completing this module, students will be able to:<\/p>\n<ul>\n<li>Describe basic objects in ADO.NET and explain how asynchronous operations work.<\/li>\n<li>Create an Entity Framework Core data model.<\/li>\n<li>Query data by using Entity Framework Core.<\/li>\n<li>Insert, delete, and update entities by using Entity Framework Core.<\/li>\n<\/ul>\n<p><span class=\"DetailPagesContentLeadIn\">Module 3: Creating and Consuming ASP.NET Core Web APIs<\/span><span class=\"DetailPagesContentText\">ASP.NET Core Web API provides a robust and modern framework for creating Hypertext Transfer Protocol (HTTP)-based services. In this module, you will be introduced to the HTTP-based services. You will learn how HTTP works and become familiar with HTTP messages, HTTP methods, status codes, and headers. You will also be introduced to the Representational State Transfer (REST) architectural style and hypermedia. You will learn how to create HTTP-based services by using ASP.NET Core Web API. You will also learn how to consume them from various clients. After Lesson 3, in the lab &#8222;Creating an ASP.NET Core Web APIs&#8221;, you will create a web API and consume it from a client.<\/span><span class=\"DetailPagesContentHeading1\">Lessons <\/span><\/p>\n<ul class=\"DetailPagesContentUnorderedList\">\n<li class=\"DetailPagesContentListItem\">HTTP Services<\/li>\n<li class=\"DetailPagesContentListItem\">Creating an ASP.NET Core Web API<\/li>\n<li class=\"DetailPagesContentListItem\">Consuming ASP.NET Core Web APIs<\/li>\n<li class=\"DetailPagesContentListItem\">Handling HTTP Requests and Responses<\/li>\n<li class=\"DetailPagesContentListItem\">Automatically Generating HTTP Requests and Responses<\/li>\n<\/ul>\n<p><span class=\"DetailPagesContentLeadIn\">Lab : Creating an ASP.NET Core Web API<\/span><\/p>\n<ul class=\"DetailPagesContentUnorderedList\">\n<li class=\"DetailPagesContentListItem\">Create a controller class<\/li>\n<li class=\"DetailPagesContentListItem\">Use the API from a browser<\/li>\n<li class=\"DetailPagesContentListItem\">Create a client<\/li>\n<\/ul>\n<p>After completing this module, students will be able to:<\/p>\n<ul>\n<li>Design services by using the HTTP protocol.<\/li>\n<li>Create services by using ASP.NET Core Web API.<\/li>\n<li>Use the HttpRequest\/IActionResult classes to control HTTP messages.<\/li>\n<li>Consume ASP.NET Web API services.<\/li>\n<\/ul>\n<p><span class=\"DetailPagesContentLeadIn\">Module 4: Extending ASP.NET Core HTTP Services<\/span><span class=\"DetailPagesContentText\">ASP.NET Core Web API provides a complete solution for building HTTP services, but services often have various needs and dependencies. In many cases, you will need to extend or customize the way ASP.NET Core Web API executes your service. Handling needs such as applying error handling and logging integrate with other components of your application and supporting other standards that are available in the HTTP world. Understanding the way ASP.NET Core Web API works is important when you extend ASP.NET Core Web API. The division of responsibilities between components and the order of execution are important when intervening with the way ASP.NET Core Web API executes. Finally, with ASP.NET Core Web API, you can also extend the way you interact with other parts of your system. With the dependency resolver mechanism, you can control how instances of your service are created, giving you complete control on managing dependencies of the services.<\/span><span class=\"DetailPagesContentHeading1\">Lessons <\/span><\/p>\n<ul class=\"DetailPagesContentUnorderedList\">\n<li class=\"DetailPagesContentListItem\">The ASP.NET Core Request Pipeline<\/li>\n<li class=\"DetailPagesContentListItem\">Customizing Controllers and Actions<\/li>\n<li class=\"DetailPagesContentListItem\">Injecting Dependencies into Controllers<\/li>\n<\/ul>\n<p><span class=\"DetailPagesContentLeadIn\">Lab : Customizing the ASP.NET Core Pipeline<\/span><\/p>\n<ul class=\"DetailPagesContentUnorderedList\">\n<li class=\"DetailPagesContentListItem\">Use Dependency Injection to Get a Repository Object<\/li>\n<li class=\"DetailPagesContentListItem\">Create a Cache Filter<\/li>\n<li class=\"DetailPagesContentListItem\">Create a Debugging Middleware<\/li>\n<\/ul>\n<p>After completing this module, students will be able to:<\/p>\n<ul>\n<li>Extend the ASP.NET Web API request and response pipeline.<\/li>\n<li>Customize Controllers and Actions.<\/li>\n<li>Inject dependencies into ASP.NET Web API controllers.<\/li>\n<\/ul>\n<p><span class=\"DetailPagesContentLeadIn\">Module 5: Hosting Services On-Premises and in Azure<\/span><span class=\"DetailPagesContentText\">In this module you will learn how to host your application on-premises and on Azure. You will also learn about Docker containers, and writing serverless applications with Azure functions.<\/span><span class=\"DetailPagesContentHeading1\">Lessons <\/span><\/p>\n<ul class=\"DetailPagesContentUnorderedList\">\n<li class=\"DetailPagesContentListItem\">Hosting Services on-premises<\/li>\n<li class=\"DetailPagesContentListItem\">Hosting Services in Azure App Service<\/li>\n<li class=\"DetailPagesContentListItem\">Packaging Services in Containers<\/li>\n<li class=\"DetailPagesContentListItem\">Implementing Serverless Services<\/li>\n<\/ul>\n<p><span class=\"DetailPagesContentLeadIn\">Lab : Host an ASP.NET Core service in a Windows Service<\/span><\/p>\n<ul class=\"DetailPagesContentUnorderedList\">\n<li class=\"DetailPagesContentListItem\">Creating a new ASP.NET Core Application<\/li>\n<li class=\"DetailPagesContentListItem\">Registering the Windows Service<\/li>\n<\/ul>\n<p><span class=\"DetailPagesContentLeadIn\">Lab : Host an ASP.NET Core Web API in an Azure Web App<\/span><\/p>\n<ul class=\"DetailPagesContentUnorderedList\">\n<li class=\"DetailPagesContentListItem\">Create a Web App in the Azure portal<\/li>\n<li class=\"DetailPagesContentListItem\">Deploy an ASP.NET Core Web API to the Web App<\/li>\n<\/ul>\n<p><span class=\"DetailPagesContentLeadIn\">Lab : Host an ASP.NET Core service in Azure Container Instances<\/span><\/p>\n<ul class=\"DetailPagesContentUnorderedList\">\n<li class=\"DetailPagesContentListItem\">Publish the service to a Docker container<\/li>\n<li class=\"DetailPagesContentListItem\">Host the service in Azure Container Instances<\/li>\n<\/ul>\n<p><span class=\"DetailPagesContentLeadIn\">Lab : Implement an Azure Function<\/span><\/p>\n<ul class=\"DetailPagesContentUnorderedList\">\n<li class=\"DetailPagesContentListItem\">Develop the service locally<\/li>\n<li class=\"DetailPagesContentListItem\">Deploy the service to Azure Functions<\/li>\n<\/ul>\n<p>After completing this module, students will be able:<\/p>\n<ul>\n<li>Host services on-premises by using Windows services and Microsoft Internet Information Services (IIS).<\/li>\n<li>Host services in the Azure cloud environment by using Web Apps, Docker containers, and Azure Functions.<\/li>\n<li>Package services in containers.<\/li>\n<li>Implement serverless services.<\/li>\n<\/ul>\n<p><span class=\"DetailPagesContentLeadIn\">Module 6: Deploying and Managing Services<\/span><span class=\"DetailPagesContentText\">In this module, you will learn about Web Deploy and how to deploy web applications by using Web Deploy in Visual Studio. You will also learn how to define continuous integration and continuous delivery pipelines and how to use Azure API Management and OpenAPI to provide robust, secure, and reliable APIs to your customers.<\/span><span class=\"DetailPagesContentHeading1\">Lessons <\/span><\/p>\n<ul class=\"DetailPagesContentUnorderedList\">\n<li class=\"DetailPagesContentListItem\">Web Deployment with Visual Studio 2017<\/li>\n<li class=\"DetailPagesContentListItem\">Continuous Delivery with Visual Studio Team Services<\/li>\n<li class=\"DetailPagesContentListItem\">Deploying Applications to Staging and Production Environments<\/li>\n<li class=\"DetailPagesContentListItem\">Defining Service Interfaces with Azure API Management<\/li>\n<\/ul>\n<p><span class=\"DetailPagesContentLeadIn\">Lab : Deploying an ASP.NET Core web service on Linux<\/span><\/p>\n<ul class=\"DetailPagesContentUnorderedList\">\n<li class=\"DetailPagesContentListItem\">Publish the ASP.NET Core web service for Linux<\/li>\n<li class=\"DetailPagesContentListItem\">Configure Nginx as a reverse proxy<\/li>\n<\/ul>\n<p><span class=\"DetailPagesContentLeadIn\">Lab : Deploying to Staging and Production<\/span><\/p>\n<ul class=\"DetailPagesContentUnorderedList\">\n<li class=\"DetailPagesContentListItem\">Deploy the application to production<\/li>\n<li class=\"DetailPagesContentListItem\">Create a staging slot<\/li>\n<li class=\"DetailPagesContentListItem\">Swap the Environments<\/li>\n<\/ul>\n<p><span class=\"DetailPagesContentLeadIn\">Lab : Publishing a Web API with Azure API Management<\/span><\/p>\n<ul class=\"DetailPagesContentUnorderedList\">\n<li class=\"DetailPagesContentListItem\">Creating an Azure API Management instance<\/li>\n<li class=\"DetailPagesContentListItem\">Testing and managing the API<\/li>\n<\/ul>\n<p>After completing this module, students will be able to:<\/p>\n<ul>\n<li>Explain Microsoft Internet Information Services (IIS) Web Deploy.<\/li>\n<li>Explain Azure Web Apps deployment by using a Microsoft Visual Studio Team Services build pipeline.<\/li>\n<li>Explain how to deploy web services to Azure Container Instances.<\/li>\n<li>Explain how to define service interfaces by using API Management and Swagger.<\/li>\n<li>Explain how to define policies by using API Management.<\/li>\n<li>Explain defining service interfaces using Azure API Management and Swagger<\/li>\n<\/ul>\n<p><span class=\"DetailPagesContentLeadIn\">Module 7: Implementing Data Storage in Azure<\/span><span class=\"DetailPagesContentText\">This module explains how to store and access data stored in Azure Storage. It also explains how to configure storage access rights for storage containers and content.<\/span><span class=\"DetailPagesContentHeading1\">Lessons <\/span><\/p>\n<ul class=\"DetailPagesContentUnorderedList\">\n<li class=\"DetailPagesContentListItem\">Choosing a Data Storage Mechanism<\/li>\n<li class=\"DetailPagesContentListItem\">Accessing Data in Azure Storage<\/li>\n<li class=\"DetailPagesContentListItem\">Working with Structured Data in Azure<\/li>\n<li class=\"DetailPagesContentListItem\">Geographically Distributing Data with Azure CDN<\/li>\n<li class=\"DetailPagesContentListItem\">Scaling with Out-of-Process Cache<\/li>\n<\/ul>\n<p><span class=\"DetailPagesContentLeadIn\">Lab : Storing Files in Azure Storage<\/span><\/p>\n<ul class=\"DetailPagesContentUnorderedList\">\n<li class=\"DetailPagesContentListItem\">Store publicly accessible files in Azure Blobs<\/li>\n<li class=\"DetailPagesContentListItem\">Generate and store private files in Azure Blobs<\/li>\n<\/ul>\n<p><span class=\"DetailPagesContentLeadIn\">Lab : Querying Graph Data with CosmosDB<\/span><\/p>\n<ul class=\"DetailPagesContentUnorderedList\">\n<li class=\"DetailPagesContentListItem\">Create the CosmosDB graph database<\/li>\n<li class=\"DetailPagesContentListItem\">Query the CosmosDB database<\/li>\n<\/ul>\n<p><span class=\"DetailPagesContentLeadIn\">Lab : Caching out-of-process with Azure Redis cache<\/span><\/p>\n<ul class=\"DetailPagesContentUnorderedList\">\n<li class=\"DetailPagesContentListItem\">Create the Azure Redis Cache service<\/li>\n<li class=\"DetailPagesContentListItem\">Access the cache service from code<\/li>\n<li class=\"DetailPagesContentListItem\">Test the application<\/li>\n<\/ul>\n<p>After completing this module, students will be able to:<\/p>\n<ul>\n<li>Describe the architecture of Storage.<\/li>\n<li>Control access to your Storage items.<\/li>\n<li>Cache data using Azure Cache for Redis.<\/li>\n<li>Distribute data by using Microsoft Azure Content Delivery Network.<\/li>\n<\/ul>\n<p><span class=\"DetailPagesContentLeadIn\">Module 8: Diagnostics and Monitoring<\/span><span class=\"DetailPagesContentText\">This module explains how to monitor and log services, both on-premises and in Azure.<\/span><span class=\"DetailPagesContentHeading1\">Lessons <\/span><\/p>\n<ul class=\"DetailPagesContentUnorderedList\">\n<li class=\"DetailPagesContentListItem\">Logging in ASP.NET Core<\/li>\n<li class=\"DetailPagesContentListItem\">Diagnostic Tools<\/li>\n<li class=\"DetailPagesContentListItem\">Application Insights<\/li>\n<\/ul>\n<p><span class=\"DetailPagesContentLeadIn\">Lab : Monitoring ASP.NET Core with ETW and LTTng<\/span><\/p>\n<ul class=\"DetailPagesContentUnorderedList\">\n<li class=\"DetailPagesContentListItem\">Collect and view ETW events<\/li>\n<li class=\"DetailPagesContentListItem\">Collect and view LTTng events<\/li>\n<\/ul>\n<p><span class=\"DetailPagesContentLeadIn\">Lab : Monitoring Azure Web Apps with Application Insights<\/span><\/p>\n<ul class=\"DetailPagesContentUnorderedList\">\n<li class=\"DetailPagesContentListItem\">Add the Application Insights SDK<\/li>\n<li class=\"DetailPagesContentListItem\">Load test the web service<\/li>\n<li class=\"DetailPagesContentListItem\">Analyze the performance results<\/li>\n<\/ul>\n<p>After completing this module, students will be able to:<\/p>\n<ul>\n<li>Explain trace listeners<\/li>\n<li>Explain performance counters<\/li>\n<li>Explain ETW and LTTng events<\/li>\n<li>Demonstrate using App Insights to monitor services<\/li>\n<\/ul>\n<p><span class=\"DetailPagesContentLeadIn\">Module 9: Securing services on-premises and in Microsoft Azure<\/span><span class=\"DetailPagesContentText\">This module describes claim-based identity concepts and standards, and how to implement authentication and authorization by using Azure Active Directory to secure an ASP.NET Core Web API service.<\/span><span class=\"DetailPagesContentHeading1\">Lessons <\/span><\/p>\n<ul class=\"DetailPagesContentUnorderedList\">\n<li class=\"DetailPagesContentListItem\">Explaining Security Terminology<\/li>\n<li class=\"DetailPagesContentListItem\">Securing Services with ASP.NET Core Identity<\/li>\n<li class=\"DetailPagesContentListItem\">Securing Services with Azure Active Directory<\/li>\n<\/ul>\n<p><span class=\"DetailPagesContentLeadIn\">Lab : Using ASP.NET Core Identity<\/span><\/p>\n<ul class=\"DetailPagesContentUnorderedList\">\n<li class=\"DetailPagesContentListItem\">Add ASP.NET Core Identity middleware<\/li>\n<li class=\"DetailPagesContentListItem\">Add authorization code<\/li>\n<li class=\"DetailPagesContentListItem\">Run a client application to test the server<\/li>\n<\/ul>\n<p><span class=\"DetailPagesContentLeadIn\">Lab : Using Azure Active Directory with ASP.NET Core<\/span><\/p>\n<ul class=\"DetailPagesContentUnorderedList\">\n<li class=\"DetailPagesContentListItem\">Authenticate a client application using AAD B2C and MSAL.js<\/li>\n<\/ul>\n<p><span class=\"DetailPagesContentLeadIn\">Module 10: Scaling Services<\/span><span class=\"DetailPagesContentText\">This module explains how to create scalable services and applications and scale them automatically using Web Apps load balancers, Azure Application Gateway and Azure Traffic Manager.<\/span><span class=\"DetailPagesContentHeading1\">Lessons <\/span><\/p>\n<ul class=\"DetailPagesContentUnorderedList\">\n<li class=\"DetailPagesContentListItem\">Introduction to Scalability<\/li>\n<li class=\"DetailPagesContentListItem\">Automatic Scaling<\/li>\n<li class=\"DetailPagesContentListItem\">Azure Application Gateway and Traffic Manager<\/li>\n<\/ul>\n<p><span class=\"DetailPagesContentLeadIn\">Lab : Load Balancing Azure Web Apps<\/span><\/p>\n<ul class=\"DetailPagesContentUnorderedList\">\n<li class=\"DetailPagesContentListItem\">Prepare the application for load-balancing<\/li>\n<li class=\"DetailPagesContentListItem\">Test the load balancing with instance affinity<\/li>\n<li class=\"DetailPagesContentListItem\">Test the load balancing without affinity<\/li>\n<\/ul>\n<p><span class=\"DetailPagesContentLeadIn\">Lab : Load Balancing with Azure Traffic Manager<\/span><\/p>\n<ul class=\"DetailPagesContentUnorderedList\">\n<li class=\"DetailPagesContentListItem\">Deploy an Azure Web App to multiple regions<\/li>\n<li class=\"DetailPagesContentListItem\">Create an Azure Traffic Manager profile<\/li>\n<\/ul>\n<p>After completing this module, students will be able to:<\/p>\n<ul>\n<li>Explain the need for scalability.<\/li>\n<li>Describe how to use load balancing for scaling services.<\/li>\n<li>Explain Azure Load Balancer, Azure Application Gateway, and Azure Traffic Manager.<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<p>[\/vc_column_text]<\/div><div class=\"qode-advanced-tab-container\" id=\"tab-prerequisites-794\" data-icon-pack=\"\" data-icon-html=\"\">[vc_column_text]<\/p>\n<div>\n<div>\n<div>\n<div>\n<p>Before attending this course, students must have:<\/p>\n<ul>\n<li>Experience with C# programming, and concepts such as lambda expressions, LINQ, and anonymous types<\/li>\n<li>Understanding the concepts of n-tier applications<\/li>\n<li>Experience with querying and manipulating data with ADO.NET<\/li>\n<\/ul>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<p>[\/vc_column_text]<\/div><\/div>[\/vc_column][vc_column width=&#8221;1\/3&#8243;][vc_row_inner row_type=&#8221;row&#8221; type=&#8221;full_width&#8221; text_align=&#8221;left&#8221; css_animation=&#8221;&#8221;][vc_column_inner][vc_column_text]<\/p>\n<h5>Formular inregistrare:<\/h5>\n<p>[\/vc_column_text][\/vc_column_inner][\/vc_row_inner][vc_separator type=&#8221;transparent&#8221; up=&#8221;36&#8243;]\n<div class=\"wpcf7 no-js\" id=\"wpcf7-f740-o1\" lang=\"ro-RO\" dir=\"ltr\">\n<div class=\"screen-reader-response\"><p role=\"status\" aria-live=\"polite\" aria-atomic=\"true\"><\/p> <ul><\/ul><\/div>\n<form action=\"\/clone\/wp-json\/wp\/v2\/pages\/993#wpcf7-f740-o1\" method=\"post\" class=\"wpcf7-form init default\" aria-label=\"Formular de contact\" novalidate=\"novalidate\" data-status=\"init\">\n<div style=\"display: none;\">\n<input type=\"hidden\" name=\"_wpcf7\" value=\"740\" \/>\n<input type=\"hidden\" name=\"_wpcf7_version\" value=\"5.9.8\" \/>\n<input type=\"hidden\" name=\"_wpcf7_locale\" value=\"ro_RO\" \/>\n<input type=\"hidden\" name=\"_wpcf7_unit_tag\" value=\"wpcf7-f740-o1\" \/>\n<input type=\"hidden\" name=\"_wpcf7_container_post\" value=\"0\" \/>\n<input type=\"hidden\" name=\"_wpcf7_posted_data_hash\" value=\"\" \/>\n<\/div>\n<p><label> *Nume si prenume: <span class=\"wpcf7-form-control-wrap\" data-name=\"your-name\"><input size=\"40\" maxlength=\"400\" class=\"wpcf7-form-control wpcf7-text wpcf7-validates-as-required\" aria-required=\"true\" aria-invalid=\"false\" value=\"\" type=\"text\" name=\"your-name\" \/><\/span> <\/label>\n<\/p>\n<p><label> *Email: <span class=\"wpcf7-form-control-wrap\" data-name=\"your-email\"><input size=\"40\" maxlength=\"400\" class=\"wpcf7-form-control wpcf7-email wpcf7-validates-as-required wpcf7-text wpcf7-validates-as-email\" aria-required=\"true\" aria-invalid=\"false\" value=\"\" type=\"email\" name=\"your-email\" \/><\/span> <\/label><br \/>\n<label> *Mobil: <span class=\"wpcf7-form-control-wrap\" data-name=\"tel-942\"><input size=\"10\" maxlength=\"400\" class=\"wpcf7-form-control wpcf7-tel wpcf7-validates-as-required wpcf7-text wpcf7-validates-as-tel\" aria-required=\"true\" aria-invalid=\"false\" placeholder=\"ex: 0720000000\" value=\"\" type=\"tel\" name=\"tel-942\" \/><\/span> <\/label><br \/>\n<label> *Numar participanti: <span class=\"wpcf7-form-control-wrap\" data-name=\"number-552\"><input class=\"wpcf7-form-control wpcf7-number wpcf7-validates-as-required wpcf7-validates-as-number\" aria-required=\"true\" aria-invalid=\"false\" value=\"\" type=\"number\" name=\"number-552\" \/><\/span> <\/label><br \/>\n<label> Firma: <span class=\"wpcf7-form-control-wrap\" data-name=\"your-subject\"><input size=\"40\" maxlength=\"400\" class=\"wpcf7-form-control wpcf7-text\" aria-invalid=\"false\" value=\"\" type=\"text\" name=\"your-subject\" \/><\/span> <\/label>\n<\/p>\n<p><label> Observatii: <span class=\"wpcf7-form-control-wrap\" data-name=\"your-message\"><textarea cols=\"40\" rows=\"10\" maxlength=\"2000\" class=\"wpcf7-form-control wpcf7-textarea\" aria-invalid=\"false\" name=\"your-message\"><\/textarea><\/span> <\/label>\n<\/p>\n<p>Campurile marcate cu * sunt obligatorii!\n<\/p>\n<p><span class=\"wpcf7-form-control-wrap\" data-name=\"acceptance-216\"><span class=\"wpcf7-form-control wpcf7-acceptance\"><span class=\"wpcf7-list-item\"><label><input type=\"checkbox\" name=\"acceptance-216\" value=\"1\" aria-invalid=\"false\" \/><span class=\"wpcf7-list-item-label\">Sunt de acord cu <a href=\"https:\/\/sky-it.ro\/clone\/termeni-si-conditii\/\">termenii si conditiile<\/a> afisate pe site.<\/span><\/label><\/span><\/span><\/span><br \/>\n<div id=\"cf7sr-69f2aa36a3351\" class=\"cf7sr-g-recaptcha\" data-theme=\"light\" data-type=\"image\" data-size=\"normal\" data-sitekey=\"6LemG9IUAAAAAIVQNEiLTTvj-bLZnZN2NKEw1NDY\"><\/div><span class=\"wpcf7-form-control-wrap cf7sr-recaptcha\" data-name=\"cf7sr-recaptcha\"><input type=\"hidden\" name=\"cf7sr-recaptcha\" value=\"\" class=\"wpcf7-form-control\"><\/span><br \/>\n<input class=\"wpcf7-form-control wpcf7-submit has-spinner\" type=\"submit\" value=\"Trimite\" \/>\n<\/p><p style=\"display: none !important;\" class=\"akismet-fields-container\" data-prefix=\"_wpcf7_ak_\"><label>&#916;<textarea name=\"_wpcf7_ak_hp_textarea\" cols=\"45\" rows=\"8\" maxlength=\"100\"><\/textarea><\/label><input type=\"hidden\" id=\"ak_js_1\" name=\"_wpcf7_ak_js\" value=\"232\"\/><script>document.getElementById( \"ak_js_1\" ).setAttribute( \"value\", ( new Date() ).getTime() );<\/script><\/p><div class=\"wpcf7-response-output\" aria-hidden=\"true\"><\/div>\n<\/form>\n<\/div>\n[vc_separator type=&#8221;transparent&#8221; up=&#8221;46&#8243;][vc_column_text]<\/p>\n<h6>Te-ar putea interesa si:<\/h6>\n<p>[\/vc_column_text][vc_column_text]<div id='1' class='widgets_on_page wop_tiny1  wop_small1  wop_medium1  wop_large1  wop_wide1'>\n\t\t\t<ul><!-- ERROR NO TURBO SIDEBAR FOUND WITH ID wop-1--><\/ul><\/div><!-- widgets_on_page -->[\/vc_column_text][\/vc_column][\/vc_row][vc_row css_animation=&#8221;&#8221; row_type=&#8221;row&#8221; use_row_as_full_screen_section=&#8221;no&#8221; type=&#8221;grid&#8221; angled_section=&#8221;no&#8221; text_align=&#8221;left&#8221; background_image_as_pattern=&#8221;without_pattern&#8221; css=&#8221;.vc_custom_1473086245677{padding-top: 13px !important;padding-bottom: 13px !important;background-color: #ffffff !important;}&#8221;][vc_column]<div class='qode_carousels_holder clearfix'><div class='qode_carousels' data-number-of-visible-items='4'><ul class='slides'><li class='item'><div class=\"carousel_item_holder\"><a itemprop='url' href='#' target='_self'><span class='first_image_holder has_hover_image'><img decoding=\"async\" itemprop=\"image\" src=\"https:\/\/sky-it.ro\/clone\/wp-content\/uploads\/2020\/06\/cursuri-excel1-1.png\" alt=\"carousel image\" \/><\/span><span class='second_image_holder has_hover_image'><img decoding=\"async\" itemprop=\"image\" src=\"https:\/\/sky-it.ro\/clone\/wp-content\/uploads\/2020\/06\/cursuri-excel-1.png\" alt=\"carousel image\" \/><\/span><\/a><\/div><\/li><li class='item'><div class=\"carousel_item_holder\"><a itemprop='url' href='#' target='_self'><span class='first_image_holder has_hover_image'><img decoding=\"async\" itemprop=\"image\" src=\"https:\/\/sky-it.ro\/clone\/wp-content\/uploads\/2020\/06\/cursuri-excel3.png\" alt=\"carousel image\" \/><\/span><span class='second_image_holder has_hover_image'><img decoding=\"async\" itemprop=\"image\" src=\"https:\/\/sky-it.ro\/clone\/wp-content\/uploads\/2020\/06\/cursuri-excel2-1.png\" alt=\"carousel image\" \/><\/span><\/a><\/div><\/li><li class='item'><div class=\"carousel_item_holder\"><a itemprop='url' href='#' target='_self'><span class='first_image_holder has_hover_image'><img decoding=\"async\" itemprop=\"image\" src=\"https:\/\/sky-it.ro\/clone\/wp-content\/uploads\/2020\/06\/cursuri-excel5.png\" alt=\"carousel image\" \/><\/span><span class='second_image_holder has_hover_image'><img decoding=\"async\" itemprop=\"image\" src=\"https:\/\/sky-it.ro\/clone\/wp-content\/uploads\/2020\/06\/cursuri-excel4.png\" alt=\"carousel image\" \/><\/span><\/a><\/div><\/li><li class='item'><div class=\"carousel_item_holder\"><a itemprop='url' href='#' target='_self'><span class='first_image_holder has_hover_image'><img decoding=\"async\" itemprop=\"image\" src=\"https:\/\/sky-it.ro\/clone\/wp-content\/uploads\/2020\/06\/cursuri-excel7.png\" alt=\"carousel image\" \/><\/span><span class='second_image_holder has_hover_image'><img decoding=\"async\" itemprop=\"image\" src=\"https:\/\/sky-it.ro\/clone\/wp-content\/uploads\/2020\/06\/cursuri-excel6.png\" alt=\"carousel image\" \/><\/span><\/a><\/div><\/li><li class='item'><div class=\"carousel_item_holder\"><a itemprop='url' href='#' target='_self'><span class='first_image_holder has_hover_image'><img decoding=\"async\" itemprop=\"image\" src=\"https:\/\/sky-it.ro\/clone\/wp-content\/uploads\/2020\/06\/cursuri-excel9.png\" alt=\"carousel image\" \/><\/span><span class='second_image_holder has_hover_image'><img decoding=\"async\" itemprop=\"image\" src=\"https:\/\/sky-it.ro\/clone\/wp-content\/uploads\/2020\/06\/cursuri-excel8.png\" alt=\"carousel image\" \/><\/span><\/a><\/div><\/li><li class='item'><div class=\"carousel_item_holder\"><a itemprop='url' href='#' target='_self'><span class='first_image_holder has_hover_image'><img decoding=\"async\" itemprop=\"image\" src=\"https:\/\/sky-it.ro\/clone\/wp-content\/uploads\/2020\/06\/cursuri-excel11.png\" alt=\"carousel image\" \/><\/span><span class='second_image_holder has_hover_image'><img decoding=\"async\" itemprop=\"image\" src=\"https:\/\/sky-it.ro\/clone\/wp-content\/uploads\/2020\/06\/cursuri-excel10.png\" alt=\"carousel image\" \/><\/span><\/a><\/div><\/li><li class='item'><div class=\"carousel_item_holder\"><a itemprop='url' href='#' target='_self'><span class='first_image_holder has_hover_image'><img decoding=\"async\" itemprop=\"image\" src=\"https:\/\/sky-it.ro\/clone\/wp-content\/uploads\/2020\/06\/cursuri-excel13.png\" alt=\"carousel image\" \/><\/span><span class='second_image_holder has_hover_image'><img decoding=\"async\" itemprop=\"image\" src=\"https:\/\/sky-it.ro\/clone\/wp-content\/uploads\/2020\/06\/cursuri-excel12.png\" alt=\"carousel image\" \/><\/span><\/a><\/div><\/li><li class='item'><div class=\"carousel_item_holder\"><a itemprop='url' href='#' target='_self'><span class='first_image_holder has_hover_image'><img decoding=\"async\" itemprop=\"image\" src=\"https:\/\/sky-it.ro\/clone\/wp-content\/uploads\/2020\/06\/cursuri-excel15.png\" alt=\"carousel image\" \/><\/span><span class='second_image_holder has_hover_image'><img decoding=\"async\" itemprop=\"image\" src=\"https:\/\/sky-it.ro\/clone\/wp-content\/uploads\/2020\/06\/cursuri-excel14.png\" alt=\"carousel image\" \/><\/span><\/a><\/div><\/li><\/ul><\/div><\/div>[\/vc_column][\/vc_row]<\/p>\n","protected":false},"excerpt":{"rendered":"<p>[vc_row css_animation=&#8221;&#8221; row_type=&#8221;row&#8221; use_row_as_full_screen_section=&#8221;no&#8221; type=&#8221;grid&#8221; angled_section=&#8221;no&#8221; text_align=&#8221;left&#8221; background_image_as_pattern=&#8221;without_pattern&#8221; z_index=&#8221;&#8221; padding_top=&#8221;44&#8243; padding_bottom=&#8221;44&#8243;][vc_column width=&#8221;2\/3&#8243;][vc_row_inner row_type=&#8221;row&#8221; type=&#8221;full_width&#8221; text_align=&#8221;left&#8221; css_animation=&#8221;&#8221;][vc_column_inner width=&#8221;1\/3&#8243;][vc_column_text] Durata: 5 zile [\/vc_column_text][\/vc_column_inner][vc_column_inner width=&#8221;1\/3&#8243;][vc_column_text] Pret:\u00a0Solicita oferta! [\/vc_column_text][\/vc_column_inner][vc_column_inner width=&#8221;1\/3&#8243;][vc_column_text] Nivel: intermediar [\/vc_column_text][\/vc_column_inner][\/vc_row_inner][vc_separator type=&#8221;transparent&#8221; up=&#8221;44&#8243;][\/vc_column][vc_column width=&#8221;1\/3&#8243;][vc_row_inner row_type=&#8221;row&#8221; type=&#8221;full_width&#8221; text_align=&#8221;left&#8221; css_animation=&#8221;&#8221;][vc_column_inner][vc_column_text] Formular inregistrare: [\/vc_column_text][\/vc_column_inner][\/vc_row_inner][vc_separator type=&#8221;transparent&#8221; up=&#8221;36&#8243;][vc_separator type=&#8221;transparent&#8221; up=&#8221;46&#8243;][vc_column_text] Te-ar putea&#8230;<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"full_width.php","meta":{"footnotes":""},"categories":[],"tags":[],"yst_prominent_words":[],"_links":{"self":[{"href":"https:\/\/sky-it.ro\/clone\/wp-json\/wp\/v2\/pages\/993"}],"collection":[{"href":"https:\/\/sky-it.ro\/clone\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/sky-it.ro\/clone\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/sky-it.ro\/clone\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/sky-it.ro\/clone\/wp-json\/wp\/v2\/comments?post=993"}],"version-history":[{"count":2,"href":"https:\/\/sky-it.ro\/clone\/wp-json\/wp\/v2\/pages\/993\/revisions"}],"predecessor-version":[{"id":3245,"href":"https:\/\/sky-it.ro\/clone\/wp-json\/wp\/v2\/pages\/993\/revisions\/3245"}],"wp:attachment":[{"href":"https:\/\/sky-it.ro\/clone\/wp-json\/wp\/v2\/media?parent=993"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/sky-it.ro\/clone\/wp-json\/wp\/v2\/categories?post=993"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/sky-it.ro\/clone\/wp-json\/wp\/v2\/tags?post=993"},{"taxonomy":"yst_prominent_words","embeddable":true,"href":"https:\/\/sky-it.ro\/clone\/wp-json\/wp\/v2\/yst_prominent_words?post=993"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}