Skip to content

Commit e41827d

Browse files
authored
Merge pull request #178697 from MicrosoftDocs/master
Merge master to live, 4 AM
2 parents 2cc9695 + 64a2621 commit e41827d

File tree

601 files changed

+9752
-5388
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

601 files changed

+9752
-5388
lines changed

.openpublishing.publish.config.json

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,12 @@
4545
"branch": "master",
4646
"branch_mapping": {}
4747
},
48+
{
49+
"path_to_root": "azure_arc_sample",
50+
"url": "https://github.com/microsoft/azure_arc",
51+
"branch": "main",
52+
"branch_mapping": {}
53+
},
4854
{
4955
"path_to_root": "resourcemanager-templates",
5056
"url": "https://github.com/Azure/azure-docs-json-samples",

.openpublishing.redirection.json

Lines changed: 435 additions & 0 deletions
Large diffs are not rendered by default.

articles/active-directory/authentication/TOC.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -164,6 +164,8 @@
164164
href: howto-password-ban-bad-on-premises-agent-versions.md
165165
- name: Nudge Microsoft Authenticator setup (Preview)
166166
href: how-to-nudge-authenticator-app.md
167+
- name: Use Microsoft managed settings
168+
href: how-to-mfa-microsoft-managed.md
167169
- name: Use a Temporary Access Pass (Preview)
168170
href: howto-authentication-temporary-access-pass.md
169171
- name: Use SMS-based authentication
Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
---
2+
title: Use Microsoft managed settings for the Authentication Methods Policy - Azure Active Directory
3+
description: Learn how to use Microsoft managed settings for Microsoft Authenticator
4+
5+
services: active-directory
6+
ms.service: active-directory
7+
ms.subservice: authentication
8+
ms.topic: conceptual
9+
ms.date: 11/03/2021
10+
11+
ms.author: justinha
12+
author: mjsantani
13+
manager: daveba
14+
15+
ms.collection: M365-identity-device-management
16+
17+
# Customer intent: As an identity administrator, I want to encourage users to use the Microsoft Authenticator app in Azure AD to improve and secure user sign-in events.
18+
---
19+
# How to use Microsoft managed settings - Authentication Methods Policy
20+
21+
In addition to configuring Authentication Methods Policy settings to be either **Enabled** or **Disabled**, IT admins can configure some settings to be **Microsoft managed**. A setting that is configured as **Microsoft managed** allows Azure AD to enable or disable the setting.
22+
23+
## Settings that can be Microsoft managed
24+
25+
The following table lists settings that can be set to Microsoft managed and whether it is enabled or disabled.
26+
27+
| Setting | Configuration |
28+
|-----------------|---------------|
29+
| [Registration campaign](how-to-nudge-authenticator-app.md) | Disabled |
30+
| Number match | Disabled |
31+
| Additional context | Disabled |
32+
33+
## Next steps
34+
35+
[Authentication methods in Azure Active Directory - Microsoft Authenticator app](concept-authentication-authenticator-app.md)

articles/active-directory/conditional-access/concept-continuous-access-evaluation.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -169,6 +169,9 @@ More information about continuous access evaluation as a session control can be
169169

170170
With the latest CAE setting under Conditional Access, strict enforcement is a new feature that allows for enhanced security based on two factors: IP address variation and client capability. This functionality can be enabled while customizing CAE options for a given policy. By turning on strict enforcement, CAE will revoke access upon detecting any instances of either [IP address variation](#ip-address-variation) or a lack of CAE [client capability](#client-capabilities).
171171

172+
> [!NOTE]
173+
> You should only enable strict enforcement after you ensure that all the client applications support CAE and you have included all your IP addresses seen by Azure AD and the resource providers, like Exchange online and Azure Resource Mananger, in your location policy under Conditional Access. Otherwise, you could be blocked.
174+
172175
## Limitations
173176

174177
### Group membership and Policy update effective time

articles/active-directory/develop/authentication-national-cloud.md

Lines changed: 19 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ ms.service: active-directory
1010
ms.subservice: develop
1111
ms.topic: conceptual
1212
ms.workload: identity
13-
ms.date: 09/21/2021
13+
ms.date: 11/03/2021
1414
ms.author: negoe
1515
ms.reviewer: marsma, negoe,celested
1616
ms.custom: aaddev,references_regions
@@ -24,9 +24,9 @@ Including the global Azure cloud, Azure Active Directory (Azure AD) is deplo
2424

2525
- Azure Government
2626
- Azure China 21Vianet
27-
- Azure Germany ([Closing on October 29, 2021](https://www.microsoft.com/cloud-platform/germany-cloud-regions)). Learn more about [Azure Germany migration](#azure-germany-microsoft-cloud-deutschland).
27+
- Azure Germany ([Closed on October 29, 2021](https://www.microsoft.com/cloud-platform/germany-cloud-regions)). Learn more about [Azure Germany migration](#azure-germany-microsoft-cloud-deutschland).
2828

29-
Each cloud _instance_, the individual national clouds and the global Azure cloud, is a separate environment with its own endpoints. Cloud-specific endpoints include OAuth 2.0 access token and OpenID Connect ID token request endpoints, and URLs for app management and deployment, like the Azure portal.
29+
The individual national clouds and the global Azure cloud are cloud _instances_. Each cloud instance is separate from the others and has its own environment and _endpoints_. Cloud-specific endpoints include OAuth 2.0 access token and OpenID Connect ID token request endpoints, and URLs for app management and deployment, like the Azure portal.
3030

3131
As you develop your apps, use the endpoints for the cloud instance where you'll deploy the application.
3232

@@ -42,6 +42,18 @@ The following table lists the base URLs for the Azure AD endpoints used to regis
4242
| Azure portal China operated by 21Vianet | `https://portal.azure.cn` |
4343
| Azure portal (global service) | `https://portal.azure.com` |
4444

45+
## Application endpoints
46+
47+
You can find the authentication endpoints for your application in the Azure portal.
48+
49+
1. Sign in to the <a href="https://portal.azure.com/" target="_blank">Azure portal</a>.
50+
1. Select **Azure Active Directory**.
51+
1. Under **Manage**, select **App registrations**, and then select **Endpoints** in the top menu.
52+
53+
The **Endpoints** page is displayed showing the authentication endpoints for the application registered in your Azure AD tenant.
54+
55+
Use the endpoint that matches the authentication protocol you're using in conjunction with the **Application (client) ID** to craft the authentication request specific to your application.
56+
4557
## Azure AD authentication endpoints
4658

4759
All the national clouds authenticate users separately in each environment and have separate authentication endpoints.
@@ -63,17 +75,15 @@ For single-tenant applications, replace "common" in the previous URLs with your
6375

6476
## Azure Germany (Microsoft Cloud Deutschland)
6577

66-
> [!WARNING]
67-
> Azure Germany (Microsoft Cloud Deutschland) will be [closed on October 29, 2021](https://www.microsoft.com/cloud-platform/germany-cloud-regions). Services and applications you choose _not_ to migrate to a region in global Azure before that date will become inaccessible.
68-
6978
If you haven't migrated your application from Azure Germany, follow [Azure Active Directory information for the migration from Azure Germany](/microsoft-365/enterprise/ms-cloud-germany-transition-azure-ad) to get started.
7079

7180
## Microsoft Graph API
7281

7382
To learn how to call the Microsoft Graph APIs in a national cloud environment, go to [Microsoft Graph in national cloud deployments](/graph/deployments).
7483

75-
> [!IMPORTANT]
76-
> Certain services and features that are in specific regions of the global service might not be available in all of the national clouds. To find out what services are available, go to [Products available by region](https://azure.microsoft.com/global-infrastructure/services/?products=all&regions=usgov-non-regional,us-dod-central,us-dod-east,usgov-arizona,usgov-iowa,usgov-texas,usgov-virginia,china-non-regional,china-east,china-east-2,china-north,china-north-2,germany-non-regional,germany-central,germany-northeast).
84+
Some services and features in the global Azure cloud might be unavailable in other cloud instances like the national clouds.
85+
86+
To find out which services and features are available in a given cloud instance, see [Products available by region](https://azure.microsoft.com/global-infrastructure/services/?products=all&regions=usgov-non-regional,us-dod-central,us-dod-east,usgov-arizona,usgov-iowa,usgov-texas,usgov-virginia,china-non-regional,china-east,china-east-2,china-north,china-north-2,germany-non-regional,germany-central,germany-northeast).
7787

7888
To learn how to build an application by using the Microsoft identity platform, follow the [Single-page application (SPA) using auth code flow tutorial](tutorial-v2-angular-auth-code.md). Specifically, this app will sign in a user and get an access token to call the Microsoft Graph API.
7989

@@ -85,4 +95,4 @@ National cloud documentation:
8595

8696
- [Azure Government](../../azure-government/index.yml)
8797
- [Azure China 21Vianet](/azure/china/)
88-
- [Azure Germany (Closing on October 29, 2021)](../../germany/index.yml)
98+
- [Azure Germany (Closed on October 29, 2021)](../../germany/index.yml)

articles/api-management/TOC.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -97,8 +97,6 @@
9797
- name: Compute platform
9898
href: compute-infrastructure.md
9999

100-
101-
102100
- name: How-to guides
103101
items:
104102
- name: Define APIs
@@ -115,9 +113,11 @@
115113
href: websocket-api.md
116114
- name: Import a GraphQL API
117115
href: graphql-api.md
118-
- name: Import a Web App
116+
- name: Import an App Service web API
119117
href: import-app-service-as-api.md
120-
- name: Import a Function App
118+
- name: Import a Container App web API
119+
href: import-container-app-with-oas.md
120+
- name: Import a Function App web API
121121
href: import-function-app-as-api.md
122122
- name: Import a Logic App
123123
href: import-logic-app-as-api.md
Lines changed: 137 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,137 @@
1+
---
2+
title: Import Azure Container App to Azure API Management | Microsoft Docs
3+
description: This article shows you how to use Azure API Management to import a web API hosted in Azure Container Apps.
4+
services: api-management
5+
documentationcenter: ''
6+
author: adrianhall
7+
8+
ms.service: api-management
9+
ms.topic: article
10+
ms.date: 11/03/2021
11+
ms.author: adhal
12+
13+
---
14+
# Import an Azure Container App as an API
15+
16+
This article shows how to import an Azure Container App to Azure API Management and test the imported API using the Azure portal. In this article, you learn how to:
17+
18+
> [!div class="checklist"]
19+
> * Import a Container App that exposes a Web API
20+
> * Test the API in the Azure portal
21+
22+
> [!NOTE]
23+
> Azure Container Apps are currently in preview.
24+
25+
## Expose Container App with API Management
26+
27+
[Azure Container Apps](../container-apps/overview.md) allows you to deploy containerized apps without managing complex infrastructure. API developers can write code using their preferred programming language or framework, build microservices with full support for Distributed Application Runtime (Dapr), and scale based on HTTP traffic or other events.
28+
29+
API Management is the recommended environment to expose a Container App hosted web API, for several reasons:
30+
31+
* Decouple managing and securing the front end exposed to API consumers from managing and monitoring the backend web API
32+
* Manage web APIs hosted as Container Apps in the same environment as your other APIs
33+
* Apply [policies](api-management-policies.md) to change API behavior, such as call rate limiting
34+
* Direct API consumers to API Management's customizable [developer portal](api-management-howto-developer-portal.md) to discover and learn about your APIs, request access, and try them
35+
36+
For more information, see [About API Management](api-management-key-concepts.md).
37+
38+
## OpenAPI specification versus wildcard operations
39+
40+
API Management supports import of Container Apps that provide an OpenAPI specification (Swagger definition). However, an OpenAPI specification isn't required. We recommend providing an OpenAPI specification. API Management can import individual operations, allowing you to validate, manage, secure, and update configurations for each operation separately.
41+
42+
If the Container App exposes an OpenAPI specification, API Management creates API operations that map directly to the definition. API Management will look in several locations for an OpenAPI Specification
43+
44+
* The Container App configuration.
45+
* `/openapi.json`
46+
* `/openapi.yml`
47+
* `/swagger/v1/swagger.json`
48+
49+
If an OpenAPI specification isn't provided, API Management generates [wildcard operations](add-api-manually.md#add-and-test-a-wildcard-operation) for the common HTTP verbs (GET, PUT, and so on). You can still take advantage of the same API Management features, but operations aren't defined at the same level of detail.
50+
51+
In either case, you can [edit](edit-api.md) or [add](add-api-manually.md) operations to the API after import.
52+
53+
### Example
54+
55+
Your backend Container App might support two GET operations:
56+
57+
* `https://myappservice.azurewebsites.net/customer/{id}`
58+
* `https://myappservice.azurewebsites.net/customers`
59+
60+
You import the Container App to your API Management service at a path such as `https://contosoapi.azure-api.net/store`. The following table shows the operations that are imported to API Management, either with or without an OpenAPI specification:
61+
62+
| Type |Imported operations |Sample requests |
63+
|---------|---------|---------|
64+
|OpenAPI specification | `GET /customer/{id}`<br/><br/> `GET /customers` | `GET https://contosoapi.azure-api.net/store/customer/1`<br/><br/>`GET https://contosoapi.azure-api.net/store/customers` |
65+
|Wildcard | `GET /*` | `GET https://contosoapi.azure-api.net/store/customer/1`<br/><br/>`GET https://contosoapi.azure-api.net/store/customers` |
66+
67+
The wildcard operation allows the same requests to the backend service as the operations in the OpenAPI specification. However, the OpenAPI-specified operations can be managed separately in API Management.
68+
69+
## Prerequisites
70+
71+
+ Complete the following quickstart: [Create an Azure API Management instance](get-started-create-service-instance.md).
72+
+ Make sure there's a Container App that exposes a Web API in your subscription. For more information, see [Container Apps documentation](../container-apps/index.yml).
73+
74+
[!INCLUDE [api-management-navigate-to-instance.md](../../includes/api-management-navigate-to-instance.md)]
75+
76+
## <a name="create-api"> </a>Import and publish a backend API
77+
78+
1. Navigate to your API Management service in the Azure portal and select **APIs** from the menu.
79+
2. Select **Container App** from the list.
80+
81+
:::image type="content" source="media/import-container-app-with-oas/add-api.png" alt-text="Create from Container App":::
82+
83+
3. Select **Browse** to see the list of Container Apps in your subscription.
84+
4. Select a Container App. If an OpenAPI definition is associated with the selected Container App, API Management fetches it and imports it. If an OpenAPI definition isn't found, API Management exposes the API by generating wildcard operations for common HTTP verbs.
85+
1. Add an API URL suffix. The suffix is a name that identifies this specific API in this API Management instance. It has to be unique in this API Management instance.
86+
2. Publish the API by associating the API with a product. In this case, the "*Unlimited*" product is used. If you want the API to be published and be available to developers, add it to a product.
87+
88+
> [!NOTE]
89+
> Products are associations of one or more APIs. You can include many APIs and offer them to developers through the developer portal. Developers must first subscribe to a product to get access to the API. When they subscribe, they get a subscription key that is good for any API in that product. If you created the API Management instance, you're an administrator and subscribed to every product by default.
90+
>
91+
> Each API Management instance comes with two sample products when createdgg:
92+
> * **Starter**
93+
> * **Unlimited**
94+
95+
3. Enter other API settings. You can set the values during creation or configure them later by going to the **Settings** tab. The settings are explained in the [Import and publish your first API](import-and-publish.md#import-and-publish-a-backend-api) tutorial.
96+
4. Select **Create**.
97+
98+
:::image type="content" source="media/import-container-app-with-oas/import-container-app.png" alt-text="Create API from Container App":::
99+
100+
## Test the new API in the Azure portal
101+
102+
Operations can be called directly from the Azure portal, which provides a convenient way to view and test the operations of an API. You can also test the API in the [developer portal](api-management-howto-developer-portal.md) or using your own REST client tools.
103+
104+
1. Select the API you created in the previous step.
105+
1. Select the **Test** tab.
106+
1. Select an operation.
107+
108+
The page displays fields for query parameters and fields for the headers. One of the headers is `Ocp-Apim-Subscription-Key`, for the subscription key of the product that is associated with this API. If you created the API Management instance, you are an administrator already, so the key is filled in automatically.
109+
110+
1. Press **Send**.
111+
112+
When the test is successful, the backend responds with **200 OK** and some data.
113+
114+
### Test wildcard operation in the portal
115+
116+
When wildcard operations are generated, the operations might not map directly to the backend API. For example, a wildcard GET operation imported in API Management uses the path `/` by default. However, your backend API might support a GET operation at the following path:
117+
118+
`/api/TodoItems`
119+
120+
You can test the path `/api/TodoItems` as follows.
121+
122+
1. Select the API you created, and select the operation.
123+
1. Select the **Test** tab.
124+
1. In **Template parameters**, update the value next to the wildcard (*) name. For example, enter `api/TodoItems`. This value gets appended to the path `/` for the wildcard operation.
125+
126+
:::image type="content" source="media/import-container-app-with-oas/test-wildcard-operation.png" alt-text="Test wildcard operation":::
127+
128+
1. Select **Send**.
129+
130+
[!INCLUDE [api-management-navigate-to-instance.md](../../includes/api-management-append-apis.md)]
131+
132+
[!INCLUDE [api-management-define-api-topics.md](../../includes/api-management-define-api-topics.md)]
133+
134+
## Next steps
135+
136+
> [!div class="nextstepaction"]
137+
> [Transform and protect a published API](transform-api.md)
15.3 KB
Loading
39.2 KB
Loading

0 commit comments

Comments
 (0)