Skip to content

Commit b0509e3

Browse files
author
Larry Franks
committed
Merge branch 'main' of github.com:MicrosoftDocs/azure-docs-pr into data-managed-identity.md
2 parents 2aecfe9 + 515db57 commit b0509e3

File tree

188 files changed

+5112
-1457
lines changed

Some content is hidden

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

188 files changed

+5112
-1457
lines changed

articles/active-directory/app-provisioning/accidental-deletions.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,12 +8,12 @@ ms.service: active-directory
88
ms.subservice: app-provisioning
99
ms.topic: how-to
1010
ms.workload: identity
11-
ms.date: 09/27/2021
11+
ms.date: 09/30/2022
1212
ms.author: kenwith
1313
ms.reviewer: arvinh
1414
---
1515

16-
# Enable accidental deletions prevention in the Azure AD provisioning service (Preview)
16+
# Enable accidental deletions prevention in the Azure AD provisioning service
1717

1818
The Azure AD provisioning service includes a feature to help avoid accidental deletions. This feature ensures that users aren't disabled or deleted in an application unexpectedly.
1919

@@ -32,7 +32,7 @@ threshold. Also, be sure the notification email address is completed. If the del
3232
When the deletion threshold is met, the job will go into quarantine and a notification email will be sent. The quarantined job can then be allowed or rejected. To learn more about quarantine behavior, see [Application provisioning in quarantine status](application-provisioning-quarantine-status.md).
3333

3434
## Recovering from an accidental deletion
35-
If you encounter an accidental deletion you'll see it on the provisioning status page. It will say **Provisioning has been quarantined. See quarantine details for more information.**.
35+
If you encounter an accidental deletion you'll see it on the provisioning status page. It will say **Provisioning has been quarantined. See quarantine details for more information**.
3636

3737
You can click either **Allow deletes** or **View provisioning logs**.
3838

articles/active-directory/develop/app-resilience-continuous-access-evaluation.md

Lines changed: 22 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -104,11 +104,20 @@ You can test your application by signing in a user to the application then using
104104
When these conditions are met, the app can extract the claims challenge from the API response header as follows:
105105

106106
```javascript
107-
const authenticateHeader = response.headers.get('www-authenticate');
108-
const claimsChallenge = parseChallenges(authenticateHeader).claims;
109-
110-
// ...
107+
try {
108+
const response = await fetch(apiEndpoint, options);
109+
110+
if (response.status === 401 && response.headers.get('www-authenticate')) {
111+
const authenticateHeader = response.headers.get('www-authenticate');
112+
const claimsChallenge = parseChallenges(authenticateHeader).claims;
113+
114+
// use the claims challenge to acquire a new access token...
115+
}
116+
} catch(error) {
117+
// ...
118+
}
111119

120+
// helper function to parse the www-authenticate header
112121
function parseChallenges(header) {
113122
const schemeSeparator = header.indexOf(' ');
114123
const challenges = header.substring(schemeSeparator + 1).split(',');
@@ -126,24 +135,20 @@ function parseChallenges(header) {
126135
Your app would then use the claims challenge to acquire a new access token for the resource.
127136

128137
```javascript
138+
const tokenRequest = {
139+
claims: window.atob(claimsChallenge), // decode the base64 string
140+
scopes: ['User.Read']
141+
account: msalInstance.getActiveAccount();
142+
};
143+
129144
let tokenResponse;
130145

131146
try {
132-
tokenResponse = await msalInstance.acquireTokenSilent({
133-
claims: window.atob(claimsChallenge), // decode the base64 string
134-
scopes: scopes, // e.g ['User.Read', 'Contacts.Read']
135-
account: account, // current active account
136-
});
137-
147+
tokenResponse = await msalInstance.acquireTokenSilent(tokenRequest);
138148
} catch (error) {
139149
if (error instanceof InteractionRequiredAuthError) {
140-
tokenResponse = await msalInstance.acquireTokenPopup({
141-
claims: window.atob(claimsChallenge), // decode the base64 string
142-
scopes: scopes, // e.g ['User.Read', 'Contacts.Read']
143-
account: account, // current active account
144-
});
150+
tokenResponse = await msalInstance.acquireTokenPopup(tokenRequest);
145151
}
146-
147152
}
148153
```
149154

@@ -154,8 +159,7 @@ const msalConfig = {
154159
auth: {
155160
clientId: 'Enter_the_Application_Id_Here',
156161
clientCapabilities: ["CP1"]
157-
// the remaining settings
158-
// ...
162+
// remaining settings...
159163
}
160164
}
161165

articles/active-directory/develop/claims-challenge.md

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -103,7 +103,7 @@ _clientApp = PublicClientApplicationBuilder.Create(App.ClientId)
103103
.WithDefaultRedirectUri()
104104
.WithAuthority(authority)
105105
.WithClientCapabilities(new [] {"cp1"})
106-
.Build();*
106+
.Build();
107107
```
108108

109109
Those using Microsoft.Identity.Web can add the following code to the configuration file:
@@ -112,22 +112,21 @@ Those using Microsoft.Identity.Web can add the following code to the configurati
112112
{
113113
"AzureAd": {
114114
"Instance": "https://login.microsoftonline.com/",
115-
// the remaining settings
116-
// ...
117-
"ClientCapabilities": [ "cp1" ]
115+
"ClientId": 'Enter_the_Application_Id_Here'
116+
"ClientCapabilities": [ "cp1" ],
117+
// remaining settings...
118118
},
119119
```
120120
#### [JavaScript](#tab/JavaScript)
121121

122-
Those using MSAL.js can add `clientCapabilities` property to the configuration object.
122+
Those using MSAL.js or MSAL Node can add `clientCapabilities` property to the configuration object. Note: this option is available to both public and confidential cient applications.
123123

124124
```javascript
125125
const msalConfig = {
126126
auth: {
127127
clientId: 'Enter_the_Application_Id_Here',
128128
clientCapabilities: ["CP1"]
129-
// the remaining settings
130-
// ...
129+
// remaining settings...
131130
}
132131
}
133132

@@ -222,14 +221,15 @@ else
222221

223222
### [JavaScript](#tab/JavaScript)
224223

224+
The following snippet illustrates a custom Express.js middleware:
225+
225226
```javascript
226227
const checkIsClientCapableOfClaimsChallenge = (req, res, next) => {
227228
// req.authInfo contains the decoded access token payload
228229
if (req.authInfo['xms_cc'] && req.authInfo['xms_cc'].includes('CP1')) {
229230
// Return formatted claims challenge as this client understands this
230-
231231
} else {
232-
return res.status(403).json({ error: 'Client is not capable' });
232+
return res.status(403).json({ error: 'Client is not capable' });
233233
}
234234
}
235235

articles/active-directory/develop/mark-app-as-publisher-verified.md

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,6 @@ If you are already enrolled in the Microsoft Partner Network (MPN) and have met
3131

3232
For more details on specific benefits, requirements, and frequently asked questions see the [overview](publisher-verification-overview.md).
3333

34-
3534
## Mark your app as publisher verified
3635
Make sure you have met the [pre-requisites](publisher-verification-overview.md#requirements), then follow these steps to mark your app(s) as Publisher Verified.
3736

articles/active-directory/develop/whats-new-docs.md

Lines changed: 14 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ services: active-directory
55
author: mmacy
66
manager: CelesteDG
77

8-
ms.date: 09/01/2022
8+
ms.date: 09/03/2022
99
ms.service: active-directory
1010
ms.subservice: develop
1111
ms.topic: reference
@@ -18,6 +18,19 @@ ms.custom: has-adal-ref
1818

1919
Welcome to what's new in the Microsoft identity platform documentation. This article lists new docs that have been added and those that have had significant updates in the last three months.
2020

21+
## September 2022
22+
23+
### New articles
24+
25+
- [Configure a user-assigned managed identity to trust an external identity provider (preview)](workload-identity-federation-create-trust-user-assigned-managed-identity.md)
26+
- [Important considerations and restrictions for federated identity credentials](workload-identity-federation-considerations.md)
27+
28+
### Updated articles
29+
30+
- [How to use Continuous Access Evaluation enabled APIs in your applications](app-resilience-continuous-access-evaluation.md)
31+
- [Run automated integration tests](test-automate-integration-testing.md)
32+
- [Tutorial: Sign in users and call the Microsoft Graph API from a JavaScript single-page application (SPA)](tutorial-v2-javascript-spa.md)
33+
2134
## August 2022
2235

2336
### Updated articles
@@ -51,13 +64,3 @@ Welcome to what's new in the Microsoft identity platform documentation. This art
5164
- [Microsoft identity platform access tokens](access-tokens.md)
5265
- [Single-page application: Sign-in and Sign-out](scenario-spa-sign-in.md)
5366
- [Tutorial: Add sign-in to Microsoft to an ASP.NET web app](tutorial-v2-asp-webapp.md)
54-
55-
## June 2022
56-
57-
### Updated articles
58-
59-
- [Add app roles to your application and receive them in the token](howto-add-app-roles-in-azure-ad-apps.md)
60-
- [Azure AD Authentication and authorization error codes](reference-aadsts-error-codes.md)
61-
- [Microsoft identity platform refresh tokens](refresh-tokens.md)
62-
- [Single-page application: Acquire a token to call an API](scenario-spa-acquire-token.md)
63-
- [Tutorial: Sign in users and call the Microsoft Graph API in an Electron desktop app](tutorial-v2-nodejs-desktop.md)

articles/active-directory/enterprise-users/directory-delete-howto.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,8 @@ You can't delete a organization in Azure AD until it passes several checks. Thes
3030
* There can be no multifactor authentication providers linked to the organization.
3131
* There can be no subscriptions for any Microsoft Online Services such as Microsoft Azure, Microsoft 365, or Azure AD Premium associated with the organization. For example, if a default Azure AD tenant was created for you in Azure, you can't delete this organization if your Azure subscription still relies on it for authentication. You also can't delete a tenant if another user has associated an Azure subscription with it.
3232

33-
[!NOTE] Microsoft is aware that customers with certain tenant configurations may be unable to successfully delete their Azure AD organization. We are working to address this problem. In the meantime, if needed, you can contact Microsoft support for details about the issue.
33+
> [!NOTE]
34+
> Microsoft is aware that customers with certain tenant configurations may be unable to successfully delete their Azure AD organization. We are working to address this problem. In the meantime, if needed, you can contact Microsoft support for details about the issue.
3435
3536
## Delete the organization
3637

articles/active-directory/enterprise-users/licensing-ps-examples.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
---
22

3-
title: PowerShell and Graph examples for group licensing - Azure AD | Microsoft Docs
3+
title: PowerShell and Microsoft Graph examples for group licensing - Azure AD | Microsoft Docs
44
description: PowerShell + Graph examples and scenarios for Azure Active Directory group-based licensing
55
services: active-directory
66
keywords: Azure AD licensing
@@ -17,7 +17,7 @@ ms.reviewer: sumitp
1717
ms.collection: M365-identity-device-management
1818
---
1919

20-
# PowerShell and Graph examples for group-based licensing in Azure AD
20+
# PowerShell and Microsoft Graph examples for group-based licensing in Azure AD
2121

2222
Full functionality for group-based licensing in Azure Active Directory (Azure AD), part of Microsoft Entra, is available through the [Azure portal](https://portal.azure.com), and currently there are some useful tasks that can be performed using the existing [MSOnline PowerShell
2323
cmdlets](/powershell/module/msonline) and Microsoft Graph. This document provides examples of what is possible.

articles/active-directory/fundamentals/users-default-permissions.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ You can restrict default permissions for member users in the following ways:
5656
| **Allow users to connect work or school account with LinkedIn** | Setting this option to **No** prevents users from connecting their work or school account with their LinkedIn account. For more information, see [LinkedIn account connections data sharing and consent](../enterprise-users/linkedin-user-consent.md). |
5757
| **Create security groups** | Setting this option to **No** prevents users from creating security groups. Global administrators and user administrators can still create security groups. To learn how, see [Azure Active Directory cmdlets for configuring group settings](../enterprise-users/groups-settings-cmdlets.md). |
5858
| **Create Microsoft 365 groups** | Setting this option to **No** prevents users from creating Microsoft 365 groups. Setting this option to **Some** allows a set of users to create Microsoft 365 groups. Global administrators and user administrators can still create Microsoft 365 groups. To learn how, see [Azure Active Directory cmdlets for configuring group settings](../enterprise-users/groups-settings-cmdlets.md). |
59-
| **Restrict access to Azure AD administration portal** | **What does this switch do?** <br>**No** lets non-administrators browse the Azure AD administration portal. <br>**Yes** Restricts non-administrators from browsing the Azure AD administration portal. Non-administrators who are owners of groups or applications are unable to use the Azure portal to manage their owned resources. </p><p></p><p>**What does it not do?** <br> It does not restrict access to Azure AD data using PowerShell or other clients such as Visual Studio. <br>It does not restrict access as long as a user is assigned a custom role (or any role). <br>It does not restrict access to Entra Portal. </p><p></p><p>**When should I use this switch?** <br>Use this to prevent users from misconfiguring the resources that they own. </p><p></p><p>**When should I not use this switch?** <br>Do not use this switch as a security measure. Instead, create a Conditional Access policy that targets Microsoft Azure Management will block non-administrators access to [Microsoft Azure Management](../conditional-access/concept-conditional-access-cloud-apps.md#microsoft-azure-management). </p><p></p><p> **How do I grant only a specific non-administrator users the ability to use the Azure AD administration portal?** <br> Set this option to **Yes**, then assign them a role like global reader. </p><p></p><p>**Restrict access to the Entra administration portal** <br>A Conditional Access policy that targets Microsoft Azure Management will target access to all Azure management. |
59+
| **Restrict access to Azure AD administration portal** | **What does this switch do?** <br>**No** lets non-administrators browse the Azure AD administration portal. <br>**Yes** Restricts non-administrators from browsing the Azure AD administration portal. Non-administrators who are owners of groups or applications are unable to use the Azure portal to manage their owned resources. </p><p></p><p>**What does it not do?** <br> It does not restrict access to Azure AD data using PowerShell, Microsoft GraphAPI, or other clients such as Visual Studio. <br>It does not restrict access as long as a user is assigned a custom role (or any role). <br>It does not restrict access to Entra Portal. </p><p></p><p>**When should I use this switch?** <br>Use this to prevent users from misconfiguring the resources that they own. </p><p></p><p>**When should I not use this switch?** <br>Do not use this switch as a security measure. Instead, create a Conditional Access policy that targets Microsoft Azure Management will block non-administrators access to [Microsoft Azure Management](../conditional-access/concept-conditional-access-cloud-apps.md#microsoft-azure-management). </p><p></p><p> **How do I grant only a specific non-administrator users the ability to use the Azure AD administration portal?** <br> Set this option to **Yes**, then assign them a role like global reader. </p><p></p><p>**Restrict access to the Entra administration portal** <br>A Conditional Access policy that targets Microsoft Azure Management will target access to all Azure management. |
6060
| **Read other users** | This setting is available in Microsoft Graph and PowerShell only. Setting this flag to `$false` prevents all non-admins from reading user information from the directory. This flag does not prevent reading user information in other Microsoft services like Exchange Online.</p><p>This setting is meant for special circumstances, so we don't recommend setting the flag to `$false`. |
6161

6262
> [!NOTE]

articles/active-directory/governance/lifecycle-workflow-tasks.md

Lines changed: 1 addition & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -20,27 +20,7 @@ Lifecycle Workflows come with many pre-configured tasks that are designed to aut
2020
Lifecycle Workflow's built-in tasks each include an identifier, known as **taskDefinitionID**, and can be used to create either new workflows from scratch, or inserted into workflow templates so that they fit the needs of your organization. For more information on templates available for use with Lifecycle Workflows, see: [Lifecycle Workflow Templates](lifecycle-workflow-templates.md).
2121

2222

23-
24-
Lifecycle Workflows currently support the following tasks:
25-
26-
|Task |taskdefinitionID |Category |
27-
|---------|---------|---------|
28-
|[Send welcome email to new hire](lifecycle-workflow-tasks.md#send-welcome-email-to-new-hire) | 70b29d51-b59a-4773-9280-8841dfd3f2ea | Joiner |
29-
|[Generate Temporary Access Pass and send via email to user's manager](lifecycle-workflow-tasks.md#generate-temporary-access-pass-and-send-via-email-to-users-manager) | 1b555e50-7f65-41d5-b514-5894a026d10d | Joiner |
30-
|[Add user to groups](lifecycle-workflow-tasks.md#add-user-to-groups) | 22085229-5809-45e8-97fd-270d28d66910 | Joiner, Leaver
31-
|[Add user to teams](lifecycle-workflow-tasks.md#add-user-to-teams) | e440ed8d-25a1-4618-84ce-091ed5be5594 | Joiner, Leaver
32-
|[Enable user account](lifecycle-workflow-tasks.md#enable-user-account) | 6fc52c9d-398b-4305-9763-15f42c1676fc | Joiner, Leaver
33-
|[Run a custom task extension](lifecycle-workflow-tasks.md#run-a-custom-task-extension) | 4262b724-8dba-4fad-afc3-43fcbb497a0e | Joiner, Leaver
34-
|[Disable user account](lifecycle-workflow-tasks.md#disable-user-account) | 1dfdfcc7-52fa-4c2e-bf3a-e3919cc12950 | Leaver
35-
|[Remove user from selected group](lifecycle-workflow-tasks.md#remove-user-from-selected-groups) | 1953a66c-751c-45e5-8bfe-01462c70da3c | Leaver
36-
|[Remove users from all groups](lifecycle-workflow-tasks.md#remove-users-from-all-groups) | b3a31406-2a15-4c9a-b25b-a658fa5f07fc | Leaver
37-
|[Remove user from teams](lifecycle-workflow-tasks.md#remove-user-from-teams) | 06aa7acb-01af-4824-8899-b14e5ed788d6 | Leaver |
38-
|[Remove user from all teams](lifecycle-workflow-tasks.md#remove-users-from-all-teams) | 81f7b200-2816-4b3b-8c5d-dc556f07b024 | Leaver |
39-
|[Remove all license assignments from user](lifecycle-workflow-tasks.md#remove-all-license-assignments-from-user) | 8fa97d28-3e52-4985-b3a9-a1126f9b8b4e | Leaver
40-
|[Delete user](lifecycle-workflow-tasks.md#delete-user) | 8d18588d-9ad3-4c0f-99d0-ec215f0e3dff | Leaver |
41-
|[Send email to manager before user last day](lifecycle-workflow-tasks.md#send-email-to-manager-before-user-last-day) | 52853a3e-f4e5-4eb8-bb24-1ac09a1da935 | Leaver |
42-
|[Send email on users last day](lifecycle-workflow-tasks.md#send-email-on-users-last-day) | 9c0a1eaf-5bda-4392-9d9e-6e155bb57411 | Leaver |
43-
|[Send offboarding email to users manager after their last day](lifecycle-workflow-tasks.md#send-offboarding-email-to-users-manager-after-their-last-day) | 6f22ddd4-b3a5-47a4-a846-0d7c201a49ce | Leaver |
23+
[!INCLUDE [Lifecylce Workflows tasks table](../../../includes/lifecycle-workflows-tasks-table.md)]
4424

4525
## Common task parameters (preview)
4626

articles/active-directory/hybrid/how-to-connect-configure-ad-ds-connector-account.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -275,7 +275,7 @@ This PowerShell script will tighten permissions for the AD Connector Account pro
275275
- Disable inheritance on the specified object
276276
- Remove all ACEs on the specific object, except ACEs specific to SELF as we want to keep the default permissions intact when it comes to SELF.
277277

278-
The -ADConnectorAccountDN parameter is the AD account whose permissions need to be tightened. This is typically the MSOL_nnnnnnnnnnnn domain account that is configured in the AD DS Connector (see Determine your AD DS Connector Account). The -Credential parameter is necessary to specify the Administrator account that has the necessary privileges to restrict Active Directory permissions on the target AD object. This is typically the Enterprise or Domain Administrator.
278+
The -ADConnectorAccountDN parameter is the AD account whose permissions need to be tightened. This is typically the MSOL_nnnnnnnnnnnn domain account that is configured in the AD DS Connector (see Determine your AD DS Connector Account). The -Credential parameter is necessary to specify the Administrator account that has the necessary privileges to restrict Active Directory permissions on the target AD object (this account must be different from the ADConnectorAccountDN account). This is typically the Enterprise or Domain Administrator.
279279

280280
``` powershell
281281
Set-ADSyncRestrictedPermissions [-ADConnectorAccountDN] <String> [-Credential] <PSCredential> [-DisableCredentialValidation] [-WhatIf] [-Confirm] [<CommonParameters>]
@@ -285,7 +285,7 @@ For Example:
285285

286286
``` powershell
287287
$credential = Get-Credential
288-
Set-ADSyncRestrictedPermissions -ADConnectorAccountDN'CN=ADConnectorAccount,CN=Users,DC=Contoso,DC=com' -Credential $credential
288+
Set-ADSyncRestrictedPermissions -ADConnectorAccountDN 'CN=ADConnectorAccount,CN=Users,DC=Contoso,DC=com' -Credential $credential
289289
```
290290

291291
This cmdlet will set the following permissions:

0 commit comments

Comments
 (0)