Skip to content

Commit acb82fc

Browse files
authored
Merge pull request #112051 from MicrosoftDocs/master
4/20 PM Publish
2 parents 8e272eb + cb32c31 commit acb82fc

File tree

178 files changed

+3825
-963
lines changed

Some content is hidden

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

178 files changed

+3825
-963
lines changed

.openpublishing.redirection.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3639,7 +3639,7 @@
36393639
},
36403640
{
36413641
"source_path": "articles/key-vault/about-keys-secrets-and-certificates.md",
3642-
"redirect_url": "/azure/key-vault",
3642+
"redirect_url": "/azure/key-vault/general/about-keys-secrets-certificates",
36433643
"redirect_document_id": false
36443644
},
36453645
{

articles/active-directory/authentication/active-directory-certificate-based-authentication-android.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ Android devices can use certificate-based authentication (CBA) to authenticate t
2424

2525
Configuring this feature eliminates the need to enter a username and password combination into certain mail and Microsoft Office applications on your mobile device.
2626

27-
This topic provides you with the requirements and the supported scenarios for configuring CBA on an iOS(Android) device for users of tenants in Office 365 Enterprise, Business, Education, US Government, China, and Germany plans.
27+
This topic provides you with the requirements and the supported scenarios for configuring CBA on an Android device for users of tenants in Office 365 Enterprise, Business, Education, US Government, China, and Germany plans.
2828

2929
This feature is available in preview in Office 365 US Government Defense and Federal plans.
3030

articles/active-directory/develop/active-directory-v2-protocols.md

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -19,9 +19,6 @@ ms.custom: aaddev
1919

2020
The Microsoft identity platform endpoint for identity-as-a-service with industry standard protocols, OpenID Connect and OAuth 2.0. While the service is standards-compliant, there can be subtle differences between any two implementations of these protocols. The information here will be useful if you choose to write your code by directly sending and handling HTTP requests or use a third party open-source library, rather than using one of our [open-source libraries](reference-v2-libraries.md).
2121

22-
> [!NOTE]
23-
> Not all Azure AD scenarios and features are supported by the Microsoft identity platform endpoint. To determine if you should use the Microsoft identity platform endpoint, read about [Microsoft identity platform limitations](active-directory-v2-limitations.md).
24-
2522
## The basics
2623

2724
In nearly all OAuth 2.0 and OpenID Connect flows, there are four parties involved in the exchange:
@@ -64,7 +61,7 @@ Where the `{tenant}` can take one of four different values:
6461
To learn how to interact with these endpoints, choose a particular app type in the [Protocols](#protocols) section and follow the links for more info.
6562

6663
> [!TIP]
67-
> Any app registered in Azure AD can use the Microsoft identity platform endpoint, even if they don't sign in personal accounts. This way, you can migrate existing applications to Microsoft identity platform and [MSAL](reference-v2-libraries.md) without re-creating your application.
64+
> Any app registered in Azure AD can use the Microsoft identity platform endpoint, even if they don't sign in personal accounts. This way, you can migrate existing applications to Microsoft identity platform and [MSAL](reference-v2-libraries.md) without re-creating your application.
6865
6966
## Tokens
7067

articles/active-directory/develop/tutorial-v2-angular.md

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -50,10 +50,6 @@ This tutorial uses the following library:
5050
|---|---|
5151
|[msal.js](https://github.com/AzureAD/microsoft-authentication-library-for-js)|Microsoft Authentication Library for JavaScript Angular Wrapper|
5252

53-
> [!NOTE]
54-
> *Msal.js* targets the Microsoft identity platform endpoint, which enables personal accounts, work accounts, and school accounts to sign in and acquire tokens. The Microsoft identity platform endpoint has [some limitations](../azuread-dev/azure-ad-endpoint-comparison.md#limitations).
55-
> To understand the differences between the v1.0 and v2.0 endpoints, see the [endpoint comparison guide](../azuread-dev/azure-ad-endpoint-comparison.md).
56-
5753
You can find the source code for the MSAL.js library in the [AzureAD/microsoft-authentication-library-for-js](https://github.com/AzureAD/microsoft-authentication-library-for-js) repository on GitHub.
5854

5955
<!--end-collapse-->

articles/active-directory/develop/tutorial-v2-javascript-spa.md

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -44,10 +44,6 @@ This guide uses the following library:
4444
|---|---|
4545
|[msal.js](https://github.com/AzureAD/microsoft-authentication-library-for-js)|Microsoft Authentication Library for JavaScript|
4646

47-
> [!NOTE]
48-
> *Msal.js* targets the Microsoft identity platform endpoint, which enables personal accounts and school and work accounts to sign in and acquire tokens. The Microsoft identity platform endpoint has [some limitations](../azuread-dev/azure-ad-endpoint-comparison.md#limitations).
49-
> To understand the differences between the v1.0 and v2.0 endpoints, see the [endpoint comparison guide](../azuread-dev/azure-ad-endpoint-comparison.md).
50-
5147
<!--end-collapse-->
5248

5349
## Set up your web server or project

articles/active-directory/develop/v2-app-types.md

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -19,9 +19,6 @@ ms.custom: aaddev
1919

2020
The Microsoft identity platform (v2.0) endpoint supports authentication for a variety of modern app architectures, all of them based on industry-standard protocols [OAuth 2.0 or OpenID Connect](active-directory-v2-protocols.md). This article describes the types of apps that you can build by using Microsoft identity platform, regardless of your preferred language or platform. The information is designed to help you understand high-level scenarios before you [start working with the code](v2-overview.md#getting-started).
2121

22-
> [!NOTE]
23-
> The Microsoft identity platform endpoint doesn't support all Azure Active Directory (Azure AD) scenarios and features. To determine whether you should use the Microsoft identity platform endpoint, read about [Microsoft identity platform limitations](active-directory-v2-limitations.md).
24-
2522
## The basics
2623

2724
You must register each app that uses the Microsoft identity platform endpoint in the new [App registrations portal](https://go.microsoft.com/fwlink/?linkid=2083908). The app registration process collects and assigns these values for your app:

articles/active-directory/develop/v2-oauth2-auth-code-flow.md

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -21,9 +21,6 @@ The OAuth 2.0 authorization code grant can be used in apps that are installed on
2121

2222
This article describes how to program directly against the protocol in your application. When possible, we recommend you use the supported Microsoft Authentication Libraries (MSAL) instead to [acquire tokens and call secured web APIs](authentication-flows-app-scenarios.md#scenarios-and-supported-authentication-flows). Also take a look at the [sample apps that use MSAL](sample-v2-code.md).
2323

24-
> [!NOTE]
25-
> Not all Azure Active Directory scenarios & features are supported by the Microsoft identity platform endpoint. To determine if you should use the Microsoft identity platform endpoint, read about [Microsoft identity platform limitations](active-directory-v2-limitations.md).
26-
2724
The OAuth 2.0 authorization code flow is described in [section 4.1 of the OAuth 2.0 specification](https://tools.ietf.org/html/rfc6749). It's used to perform authentication and authorization in the majority of app types, including [web apps](v2-app-types.md#web-apps) and [natively installed apps](v2-app-types.md#mobile-and-native-apps). The flow enables apps to securely acquire access_tokens that can be used to access resources secured by the Microsoft identity platform endpoint.
2825

2926
## Protocol diagram

articles/active-directory/develop/v2-oauth2-client-creds-grant-flow.md

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -23,9 +23,6 @@ This article describes how to program directly against the protocol in your appl
2323

2424
The OAuth 2.0 client credentials grant flow permits a web service (confidential client) to use its own credentials, instead of impersonating a user, to authenticate when calling another web service. In this scenario, the client is typically a middle-tier web service, a daemon service, or a web site. For a higher level of assurance, the Microsoft identity platform also allows the calling service to use a certificate (instead of a shared secret) as a credential.
2525

26-
> [!NOTE]
27-
> The Microsoft identity platform endpoint doesn't support all Azure AD scenarios and features. To determine whether you should use the Microsoft identity platform endpoint, read about [Microsoft identity platform limitations](active-directory-v2-limitations.md).
28-
2926
In the more typical *three-legged OAuth*, a client application is granted permission to access a resource on behalf of a specific user. The permission is delegated from the user to the application, usually during the [consent](v2-permissions-and-consent.md) process. However, in the client credentials (*two-legged OAuth*) flow, permissions are granted directly to the application itself. When the app presents a token to a resource, the resource enforces that the app itself has authorization to perform an action and not the user.
3027

3128
## Protocol diagram

articles/active-directory/develop/v2-oauth2-device-code.md

Lines changed: 8 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -18,13 +18,10 @@ ms.custom: aaddev
1818

1919
# Microsoft identity platform and the OAuth 2.0 device authorization grant flow
2020

21-
The Microsoft identity platform supports the [device authorization grant](https://tools.ietf.org/html/rfc8628), which allows users to sign in to input-constrained devices such as a smart TV, IoT device, or printer. To enable this flow, the device has the user visit a webpage in their browser on another device to sign in. Once the user signs in, the device is able to get access tokens and refresh tokens as needed.
21+
The Microsoft identity platform supports the [device authorization grant](https://tools.ietf.org/html/rfc8628), which allows users to sign in to input-constrained devices such as a smart TV, IoT device, or printer. To enable this flow, the device has the user visit a webpage in their browser on another device to sign in. Once the user signs in, the device is able to get access tokens and refresh tokens as needed.
2222

2323
This article describes how to program directly against the protocol in your application. When possible, we recommend you use the supported Microsoft Authentication Libraries (MSAL) instead to [acquire tokens and call secured web APIs](authentication-flows-app-scenarios.md#scenarios-and-supported-authentication-flows). Also take a look at the [sample apps that use MSAL](sample-v2-code.md).
2424

25-
> [!NOTE]
26-
> The Microsoft identity platform endpoint doesn't support all Azure Active Directory scenarios and features. To determine whether you should use the Microsoft identity platform endpoint, read about [Microsoft identity platform limitations](active-directory-v2-limitations.md).
27-
2825
## Protocol diagram
2926

3027
The entire device code flow looks similar to the next diagram. We describe each of the steps later in this article.
@@ -58,7 +55,7 @@ scope=user.read%20openid%20profile
5855

5956
### Device authorization response
6057

61-
A successful response will be a JSON object containing the required information to allow the user to sign in.
58+
A successful response will be a JSON object containing the required information to allow the user to sign in.
6259

6360
| Parameter | Format | Description |
6461
| --- | --- | --- |
@@ -76,11 +73,11 @@ A successful response will be a JSON object containing the required information
7673

7774
After receiving the `user_code` and `verification_uri`, the client displays these to the user, instructing them to sign in using their mobile phone or PC browser.
7875

79-
If the user authenticates with a personal account (on /common or /consumers), they will be asked to sign in again in order to transfer authentication state to the device. They will also be asked to provide consent, to ensure they are aware of the permissions being granted. This does not apply to work or school accounts used to authenticate.
76+
If the user authenticates with a personal account (on /common or /consumers), they will be asked to sign in again in order to transfer authentication state to the device. They will also be asked to provide consent, to ensure they are aware of the permissions being granted. This does not apply to work or school accounts used to authenticate.
8077

8178
While the user is authenticating at the `verification_uri`, the client should be polling the `/token` endpoint for the requested token using the `device_code`.
8279

83-
```
80+
```
8481
POST https://login.microsoftonline.com/{tenant}/oauth2/v2.0/token
8582
Content-Type: application/x-www-form-urlencoded
8683
@@ -91,21 +88,21 @@ device_code: GMMhmHCXhWEzkobqIHGG_EnNYYsAkukHspeYUk9E8...
9188

9289
| Parameter | Required | Description|
9390
| -------- | -------- | ---------- |
94-
| `tenant` | Required | The same tenant or tenant alias used in the initial request. |
91+
| `tenant` | Required | The same tenant or tenant alias used in the initial request. |
9592
| `grant_type` | Required | Must be `urn:ietf:params:oauth:grant-type:device_code`|
9693
| `client_id` | Required | Must match the `client_id` used in the initial request. |
9794
| `device_code`| Required | The `device_code` returned in the device authorization request. |
9895

9996
### Expected errors
10097

101-
The device code flow is a polling protocol so your client must expect to receive errors before the user has finished authenticating.
98+
The device code flow is a polling protocol so your client must expect to receive errors before the user has finished authenticating.
10299

103100
| Error | Description | Client Action |
104101
| ------ | ----------- | -------------|
105102
| `authorization_pending` | The user hasn't finished authenticating, but hasn't canceled the flow. | Repeat the request after at least `interval` seconds. |
106103
| `authorization_declined` | The end user denied the authorization request.| Stop polling, and revert to an unauthenticated state. |
107104
| `bad_verification_code`| The `device_code` sent to the `/token` endpoint wasn't recognized. | Verify that the client is sending the correct `device_code` in the request. |
108-
| `expired_token` | At least `expires_in` seconds have passed, and authentication is no longer possible with this `device_code`. | Stop polling and revert to an unauthenticated state. |
105+
| `expired_token` | At least `expires_in` seconds have passed, and authentication is no longer possible with this `device_code`. | Stop polling and revert to an unauthenticated state. |
109106

110107
### Successful authentication response
111108

@@ -131,4 +128,4 @@ A successful token response will look like:
131128
| `id_token` | JWT | Issued if the original `scope` parameter included the `openid` scope. |
132129
| `refresh_token` | Opaque string | Issued if the original `scope` parameter included `offline_access`. |
133130

134-
You can use the refresh token to acquire new access tokens and refresh tokens using the same flow documented in the [OAuth Code flow documentation](v2-oauth2-auth-code-flow.md#refresh-the-access-token).
131+
You can use the refresh token to acquire new access tokens and refresh tokens using the same flow documented in the [OAuth Code flow documentation](v2-oauth2-auth-code-flow.md#refresh-the-access-token).

articles/active-directory/develop/v2-oauth2-implicit-grant-flow.md

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -29,9 +29,6 @@ This article describes how to program directly against the protocol in your appl
2929

3030
However, if you prefer not to use a library in your single-page app and send protocol messages yourself, follow the general steps below.
3131

32-
> [!NOTE]
33-
> Not all Azure Active Directory (Azure AD) scenarios and features are supported by the Microsoft identity platform endpoint. To determine if you should use the Microsoft identity platform endpoint, read about [Microsoft identity platform limitations](active-directory-v2-limitations.md).
34-
3532
## Suitable scenarios for the OAuth2 implicit grant
3633

3734
The OAuth2 specification declares that the implicit grant has been devised to enable user-agent applications – that is to say, JavaScript applications executing within a browser. The defining characteristic of such applications is that JavaScript code is used for accessing server resources (typically a web API) and for updating the application user experience accordingly. Think of applications like Gmail or Outlook Web Access: when you select a message from your inbox, only the message visualization panel changes to display the new selection, while the rest of the page remains unmodified. This characteristic is in contrast with traditional redirect-based Web apps, where every user interaction results in a full page postback and a full page rendering of the new server response.

0 commit comments

Comments
 (0)