Skip to content

Commit bd2350e

Browse files
committed
Merge branch 'main' of https://github.com/MicrosoftDocs/azure-docs-pr into sharedUltra
2 parents 9182b46 + 9ede3c2 commit bd2350e

File tree

720 files changed

+7401
-4073
lines changed

Some content is hidden

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

720 files changed

+7401
-4073
lines changed

.openpublishing.publish.config.json

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -164,6 +164,12 @@
164164
"branch": "dev",
165165
"branch_mapping": {}
166166
},
167+
{
168+
"path_to_root": "functions-quickstart-templates-v1",
169+
"url": "https://github.com/Azure/azure-functions-templates",
170+
"branch": "v1.x",
171+
"branch_mapping": {}
172+
},
167173
{
168174
"path_to_root": "azure-functions-samples-java",
169175
"url": "https://github.com/Azure-Samples/azure-functions-samples-java",

articles/active-directory-b2c/self-asserted-technical-profile.md

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ manager: CelesteDG
99
ms.service: active-directory
1010
ms.workload: identity
1111
ms.topic: reference
12-
ms.date: 02/17/2022
12+
ms.date: 11/07/2022
1313
ms.author: kengaderdus
1414
ms.subservice: B2C
1515
---
@@ -50,8 +50,6 @@ In a self-asserted technical profile, you can use the **InputClaims** and **Inpu
5050

5151
## Display claims
5252

53-
The display claims feature is currently in **preview**.
54-
5553
The **DisplayClaims** element contains a list of claims to be presented on the screen for collecting data from the user. To prepopulate the values of display claims, use the input claims that were previously described. The element may also contain a default value.
5654

5755
The order of the claims in **DisplayClaims** specifies the order in which Azure AD B2C renders the claims on the screen. To force the user to provide a value for a specific claim, set the **Required** attribute of the **DisplayClaim** element to `true`.
@@ -133,7 +131,7 @@ Use output claims when:
133131
- **Claims are output by output claims transformation**.
134132
- **Setting a default value in an output claim** without collecting data from the user or returning the data from the validation technical profile. The `LocalAccountSignUpWithLogonEmail` self-asserted technical profile sets the **executed-SelfAsserted-Input** claim to `true`.
135133
- **A validation technical profile returns the output claims** - Your technical profile may call a validation technical profile that returns some claims. You may want to bubble up the claims and return them to the next orchestration steps in the user journey. For example, when signing in with a local account, the self-asserted technical profile named `SelfAsserted-LocalAccountSignin-Email` calls the validation technical profile named `login-NonInteractive`. This technical profile validates the user credentials and also returns the user profile. Such as 'userPrincipalName', 'displayName', 'givenName' and 'surName'.
136-
- **A display control returns the output claims** - Your technical profile may have a reference to a [display control](display-controls.md). The display control returns some claims, such as the verified email address. You may want to bubble up the claims and return them to the next orchestration steps in the user journey. The display control feature is currently in **preview**.
134+
- **A display control returns the output claims** - Your technical profile may have a reference to a [display control](display-controls.md). The display control returns some claims, such as the verified email address. You may want to bubble up the claims and return them to the next orchestration steps in the user journey.
137135

138136
The following example demonstrates the use of a self-asserted technical profile that uses both display claims and output claims.
139137

articles/active-directory/develop/TOC.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -183,6 +183,8 @@
183183
href: app-resilience-continuous-access-evaluation.md
184184
- name: Claims challenges and requests
185185
href: claims-challenge.md
186+
- name: Configure app instance property lock
187+
href: howto-configure-app-instance-property-locks.md
186188
- name: Test
187189
items:
188190
- name: Build a test environment

articles/active-directory/develop/active-directory-saml-protocol-reference.md

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,9 @@ ms.service: active-directory
99
ms.subservice: develop
1010
ms.workload: identity
1111
ms.topic: conceptual
12-
ms.date: 10/27/2021
12+
ms.date: 11/4/2022
1313
ms.author: kenwith
14-
ms.custom: aaddev
14+
ms.custom: aaddev, engagement-fy23
1515
ms.reviewer: paulgarn
1616
---
1717

@@ -23,14 +23,17 @@ The SAML protocol requires the identity provider (Microsoft identity platform) a
2323

2424
When an application is registered with Azure AD, the app developer registers federation-related information with Azure AD. This information includes the **Redirect URI** and **Metadata URI** of the application.
2525

26-
The Microsoft identity platform uses the cloud service's **Metadata URI** to retrieve the signing key and the logout URI. In the <a href="https://portal.azure.com/" target="_blank">Azure portal</a>, you can open the app in **Azure Active Directory -> App registrations**, and then in **Manage -> Authentication**, you can update the Logout URL. This way the Microsoft identity platform can send the response to the correct URL.
26+
The Microsoft identity platform uses the cloud service's **Metadata URI** to retrieve the signing key and the logout URI. This way the Microsoft identity platform can send the response to the correct URL. In the <a href="https://portal.azure.com/" target="_blank">Azure portal</a>;
2727

28-
Azure AD exposes tenant-specific and common (tenant-independent) SSO and single sign-out endpoints. These URLs represent addressable locations--they're not just identifiers--so you can go to the endpoint to read the metadata.
28+
- Open the app in **Azure Active Directory** and select **App registrations**
29+
- Under **Manage**, select **Authentication**. From there you can update the Logout URL.
2930

30-
- The tenant-specific endpoint is located at `https://login.microsoftonline.com/<TenantDomainName>/FederationMetadata/2007-06/FederationMetadata.xml`. The _\<TenantDomainName>_ placeholder represents a registered domain name or TenantID GUID of an Azure AD tenant. For example, the federation metadata of the contoso.com tenant is at: https://login.microsoftonline.com/contoso.com/FederationMetadata/2007-06/FederationMetadata.xml
31+
Azure AD exposes tenant-specific and common (tenant-independent) SSO and single sign-out endpoints. These URLs represent addressable locations, and aren't only identifiers. You can then go to the endpoint to read the metadata.
32+
33+
- The tenant-specific endpoint is located at `https://login.microsoftonline.com/<TenantDomainName>/FederationMetadata/2007-06/FederationMetadata.xml`. The *\<TenantDomainName>* placeholder represents a registered domain name or TenantID GUID of an Azure AD tenant. For example, the federation metadata of the `contoso.com` tenant is at: https://login.microsoftonline.com/contoso.com/FederationMetadata/2007-06/FederationMetadata.xml
3134

3235
- The tenant-independent endpoint is located at
33-
`https://login.microsoftonline.com/common/FederationMetadata/2007-06/FederationMetadata.xml`. In this endpoint address, **common** appears instead of a tenant domain name or ID.
36+
`https://login.microsoftonline.com/common/FederationMetadata/2007-06/FederationMetadata.xml`. In this endpoint address, *common* appears instead of a tenant domain name or ID.
3437

3538
## Next steps
3639

Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
---
2+
title: "How to configure app instance property lock in your applications"
3+
description: How to increase app security by configuring property modification locks for sensitive properties of the application.
4+
services: active-directory
5+
manager: saumadan
6+
ms.service: active-directory
7+
ms.subservice: develop
8+
ms.topic: conceptual
9+
ms.workload: identity
10+
ms.date: 11/03/2022
11+
author: madansr7
12+
ms.author: saumadan
13+
ms.reviewer:
14+
# Customer intent: As an application developer, I want to learn how to protect properties of my application instance of being modified.
15+
---
16+
# How to configure app instance property lock for your applications (Preview)
17+
18+
Application instance lock is a feature in Azure Active Directory (Azure AD) that allows sensitive properties of a multi-tenant application object to be locked for modification after the application is provisioned in another tenant.
19+
This feature provides application developers with the ability to lock certain properties if the application doesn't support scenarios that require configuring those properties.
20+
21+
22+
## What are sensitive properties?
23+
24+
The following property usage scenarios are considered as sensitive:
25+
26+
- Credentials (`keyCredentials`, `passwordCredentials`) where usage type is `Sign`. This is a scenario where your application supports a SAML flow.
27+
- Credentials (`keyCredentials`, `passwordCredentials`) where usage type is `Verify`. In this scenario, your application supports an OIDC client credentials flow.
28+
- `TokenEncryptionKeyId` which specifies the keyId of a public key from the keyCredentials collection. When configured, Azure AD encrypts all the tokens it emits by using the key to which this property points. The application code that receives the encrypted token must use the matching private key to decrypt the token before it can be used for the signed-in user.
29+
30+
## Configure an app instance lock
31+
32+
To configure an app instance lock using the Azure portal:
33+
34+
1. Sign in to the <a href="https://portal.azure.com/" target="_blank">Azure portal</a>.
35+
1. If you have access to multiple tenants, use the **Directories + subscriptions** filter :::image type="icon" source="./media/common/portal-directory-subscription-filter.png" border="false"::: in the top menu to switch to the tenant that contains the app registration you want to configure.
36+
1. Search for and select **Azure Active Directory**.
37+
1. Under **Manage**, select **App registrations**, and then select the application you want to configure.
38+
1. Select **Authentication**, and then select **Configure** under the *App instance property lock* section.
39+
40+
:::image type="content" source="media/howto-configure-app-instance-property-locks/app-instance-lock-configure-overview.png" alt-text="Screenshot of an app registration's app instance lock in the Azure portal.":::
41+
42+
2. In the **App instance property lock** pane, enter the settings for the lock. The table following the image describes each setting and their parameters.
43+
44+
:::image type="content" source="media/howto-configure-app-instance-property-locks/app-instance-lock-configure-properties.png" alt-text="Screenshot of an app registration's app instance property lock context pane in the Azure portal.":::
45+
46+
| Field | Description |
47+
| ---------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
48+
| **Enable property lock** | Specifies if the property locks are enabled. |
49+
| **All properties** | Locks all sensitive properties without needing to select each property scenario. |
50+
| **Credentials used for verification** | Locks the ability to add or update credential properties (`keyCredentials`, `passwordCredentials`) where usage type is `verify`. |
51+
| **Credentials used for signing tokens** | Locks the ability to add or update credential properties (`keyCredentials`, `passwordCredentials`) where usage type is `sign`. |
52+
| **Token Encryption KeyId** | Locks the ability to change the `tokenEncryptionKeyId` property. |
53+
54+
3. Select **Save** to save your changes.
Loading
Loading

articles/active-directory/develop/scenario-spa-acquire-token.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ ms.custom: aaddev
1717

1818
# Single-page application: Acquire a token to call an API
1919

20-
The pattern for acquiring tokens for APIs with [MSAL.js](https://github.com/AzureAD/microsoft-authentication-library-for-js) is to first attempt a silent token request by using the `acquireTokenSilent` method. When this method is called, the library first checks the cache in browser storage to see if a non-expired access token exists and returns it. If no access token is found for the given parameters, it will throw an `InteractionRequiredAuthError`, which should be handled with an interactive token request method (`acquireTokenPopup` or `acquireTokenRedirect`). If an access token is found but it's expired, it attempts to use its refresh token to get a fresh access token. If the refresh token's 24-hour lifetime has also expired, MSAL.js will open a hidden iframe to silently request a new authorization code by leveraging the existing active session with Azure AD (if any), which will then be exchanged for a fresh set of tokens (access _and_ refresh tokens). For more information about single sign-on (SSO) session and token lifetime values in Azure AD, see [Token lifetimes](active-directory-configurable-token-lifetimes.md). For more information on MSAL.js cache lookup policy, see: [Acquiring an Access Token](https://github.com/AzureAD/microsoft-authentication-library-for-js/blob/dev/lib/msal-browser/docs/acquire-token.md#acquiring-an-access-token).
20+
The pattern for acquiring tokens for APIs with [MSAL.js](https://github.com/AzureAD/microsoft-authentication-library-for-js) is to first attempt a silent token request by using the `acquireTokenSilent` method. When this method is called, the library first checks the cache in browser storage to see if a non-expired access token exists and returns it. If no access token is found or the access token found has expired, it attempts to use its refresh token to get a fresh access token. If the refresh token's 24-hour lifetime has also expired, MSAL.js will open a hidden iframe to silently request a new authorization code by leveraging the existing active session with Azure AD (if any), which will then be exchanged for a fresh set of tokens (access _and_ refresh tokens). For more information about single sign-on (SSO) session and token lifetime values in Azure AD, see [Token lifetimes](active-directory-configurable-token-lifetimes.md). For more information on MSAL.js cache lookup policy, see: [Acquiring an Access Token](https://github.com/AzureAD/microsoft-authentication-library-for-js/blob/dev/lib/msal-browser/docs/acquire-token.md#acquiring-an-access-token).
2121

2222
The silent token requests to Azure AD might fail for reasons like a password change or updated conditional access policies. More often, failures are due to the refresh token's 24-hour lifetime expiring and [the browser blocking third party cookies](reference-third-party-cookies-spas.md), which prevents the use of hidden iframes to continue authenticating the user. In these cases, you should invoke one of the interactive methods (which may prompt the user) to acquire tokens:
2323

articles/active-directory/develop/tutorial-v2-nodejs-desktop.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ Create a folder to host your application, for example *ElectronDesktopApp*.
5252

5353
```console
5454
npm init -y
55-
npm install --save @azure/msal-node @microsoft/microsoft-graph-sdk isomorphic-fetch bootstrap jquery popper.js
55+
npm install --save @azure/msal-node @microsoft/microsoft-graph-client isomorphic-fetch bootstrap jquery popper.js
5656
npm install --save-dev [email protected]
5757
```
5858

articles/active-directory/external-identities/user-flow-add-custom-attributes.md

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,10 +8,12 @@ manager: celestedg
88
ms.service: active-directory
99
ms.subservice: B2B
1010
ms.topic: how-to
11-
ms.date: 03/02/2021
11+
ms.date: 11/07/2022
1212
ms.author: mimart
13-
ms.custom: engagement-fy23, "it-pro"
13+
ms.custom: engagement-fy23, it-pro
1414
ms.collection: M365-identity-device-management
15+
16+
# Customer intent: As a tenant administrator, I want to create custom attributes for the self-service sign-up user flows.
1517
---
1618

1719
# Define custom attributes for user flows
@@ -53,4 +55,5 @@ Once you've created a new user using a user flow that uses the newly created cus
5355

5456
## Next steps
5557

56-
[Add a self-service sign-up user flow to an app](self-service-sign-up-user-flow.md)
58+
- [Add a self-service sign-up user flow to an app](self-service-sign-up-user-flow.md)
59+
- [Customize the user flow language](user-flow-customize-language.md)

0 commit comments

Comments
 (0)