Skip to content

Commit 8809c1b

Browse files
committed
Merge branch 'main' into mfa-server
2 parents 4718030 + d9e61dd commit 8809c1b

File tree

396 files changed

+5890
-3657
lines changed

Some content is hidden

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

396 files changed

+5890
-3657
lines changed

.openpublishing.redirection.json

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,15 @@
11
{
22
"redirections": [
3+
{
4+
"source_path": "articles/storage/queues/storage-ruby-how-to-use-queue-storage.md",
5+
"redirect_url": "/previous-versions/azure/storage/queues/storage-ruby-how-to-use-queue-storage",
6+
"redirect_document_id": false
7+
},
8+
{
9+
"source_path": "articles/storage/queues/storage-php-how-to-use-queues.md",
10+
"redirect_url": "/previous-versions/azure/storage/queues/storage-php-how-to-use-queues",
11+
"redirect_document_id": false
12+
},
313
{
414
"source_path": "articles/storage/tables/table-storage-design-encrypt-data.md",
515
"redirect_url": "/previous-versions/azure/storage/tables/table-storage-design-encrypt-data",
@@ -22031,6 +22041,16 @@
2203122041
"redirect_url": "/azure/active-directory/develop/zero-trust-for-developers",
2203222042
"redirect_document_id": false
2203322043
},
22044+
{
22045+
"source_path_from_root": "/articles/active-directory/develop/web-app-quickstart-portal-node-js-passport.md",
22046+
"redirect_url": "/azure/active-directory/develop/web-app-quickstart?pivots=devlang-nodejs-msal",
22047+
"redirect_document_id": false
22048+
},
22049+
{
22050+
"source_path_from_root": "/articles/active-directory/develop/quickstart-v2-nodejs-webapp.md",
22051+
"redirect_url": "/azure/active-directory/develop/web-app-quickstart?pivots=devlang-nodejs-msal",
22052+
"redirect_document_id": false
22053+
},
2203422054
{
2203522055
"source_path_from_root": "/articles/networking/azure-orbital-overview.md",
2203622056
"redirect_url": "/azure/orbital/overview",
@@ -22480,6 +22500,11 @@
2248022500
"source_path_from_root": "/articles/communication-services/concepts/bring-your-own-storage.md",
2248122501
"redirect_url": "/azure/communication-services/concepts/call-automation/call-recording/bring-your-own-storage",
2248222502
"redirect_document_id": false
22503+
},
22504+
{
22505+
"source_path_from_root": "/articles/sentinel/data-connectors/microsoft-defender-threat-intelligence.md",
22506+
"redirect_url": "/azure/sentinel/understand-threat-intelligence",
22507+
"redirect_document_id": false
2248322508
}
2248422509

2248522510
]

articles/active-directory/app-provisioning/customize-application-attributes.md

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ ms.service: active-directory
88
ms.subservice: app-provisioning
99
ms.workload: identity
1010
ms.topic: tutorial
11-
ms.date: 03/24/2023
11+
ms.date: 03/27/2023
1212
ms.author: kenwith
1313
ms.reviewer: arvinh
1414
---
@@ -81,7 +81,7 @@ Along with this property, attribute-mappings also supports the attributes:
8181
The Azure AD provisioning service can be deployed in both "green field" scenarios (where users don't exist in the target system) and "brownfield" scenarios (where users already exist in the target system). To support both scenarios, the provisioning service uses the concept of matching attributes. Matching attributes allow you to determine how to uniquely identify a user in the source and match the user in the target. As part of planning your deployment, identify the attribute that can be used to uniquely identify a user in the source and target systems. Things to note:
8282

8383
- **Matching attributes should be unique:** Customers often use attributes such as userPrincipalName, mail, or object ID as the matching attribute.
84-
- **Multiple attributes can be used as matching attributes:** You can define multiple attributes to be evaluated when matching users and the order in which they're evaluated (defined as matching precedence in the UI). If for example, you define three attributes as matching attributes, and a user is uniquely matched after evaluating the first two attributes, the service won't evaluate the third attribute. The service will evaluate matching attributes in the order specified and stop evaluating when a match is found.
84+
- **Multiple attributes can be used as matching attributes:** You can define multiple attributes to be evaluated when matching users and the order in which they're evaluated (defined as matching precedence in the UI). If for example, you define three attributes as matching attributes, and a user is uniquely matched after evaluating the first two attributes, the service won't evaluate the third attribute. The service evaluates matching attributes in the order specified and stops evaluating when a match is found.
8585
- **The value in the source and the target don't have to match exactly:** The value in the target can be a function of the value in the source. So, one could have an emailAddress attribute in the source and the userPrincipalName in the target, and match by a function of the emailAddress attribute that replaces some characters with some constant value.
8686
- **Matching based on a combination of attributes isn't supported:** Most applications don't support querying based on two properties. Therefore, it's not possible to match based on a combination of attributes. It's possible to evaluate single properties on after another.
8787
- **All users must have a value for at least one matching attribute:** If you define one matching attribute, all users must have a value for that attribute in the source system. If for example, you define userPrincipalName as the matching attribute, all users must have a userPrincipalName. If you define multiple matching attributes (for example, both extensionAttribute1 and mail), not all users have to have the same matching attribute. One user could have a extensionAttribute1 but not mail while another user could have mail but no extensionAttribute1.
@@ -114,7 +114,7 @@ Applications and systems that support customization of the attribute list includ
114114
- SuccessFactors to Active Directory / SuccessFactors to Azure Active Directory
115115
- Azure Active Directory ([Azure AD Graph API default attributes](/previous-versions/azure/ad/graph/api/entity-and-complex-type-reference#user-entity) and custom directory extensions are supported). For more information about creating extensions, see [Syncing extension attributes for Azure Active Directory Application Provisioning](./user-provisioning-sync-attributes-for-mapping.md) and [Known issues for provisioning in Azure Active Directory](./known-issues.md).
116116
- Apps that support [SCIM 2.0](https://tools.ietf.org/html/rfc7643)
117-
- For Azure Active Directory writeback to Workday or SuccessFactors, it's supported to update relevant metadata for supported attributes (XPATH and JSONPath), but isn't supported to add new Workday or SuccessFactors attributes beyond those included in the default schema
117+
- Azure Active Directory supports writeback to Workday or SuccessFactors for XPATH and JSONPath metadata. Azure Active Directory doesn't support new Workday or SuccessFactors attributes not included in the default schema.
118118

119119

120120
> [!NOTE]
@@ -148,7 +148,7 @@ The SCIM RFC defines a core user and group schema, while also allowing for exten
148148
4. Select **Edit attribute list for AppName**.
149149
5. At the bottom of the attribute list, enter information about the custom attribute in the fields provided. Then select **Add Attribute**.
150150

151-
For SCIM applications, the attribute name must follow the pattern shown in the example below. The "CustomExtensionName" and "CustomAttribute" can be customized per your application's requirements, for example: urn:ietf:params:scim:schemas:extension:CustomExtensionName:2.0:User:CustomAttribute
151+
For SCIM applications, the attribute name must follow the pattern shown in the example. The "CustomExtensionName" and "CustomAttribute" can be customized per your application's requirements, for example: urn:ietf:params:scim:schemas:extension:CustomExtensionName:2.0:User:CustomAttribute
152152

153153
These instructions are only applicable to SCIM-enabled applications. Applications such as ServiceNow and Salesforce aren't integrated with Azure AD using SCIM, and therefore they don't require this specific namespace when adding a custom attribute.
154154

@@ -196,7 +196,7 @@ Custom attributes can't be referential attributes, multi-value or complex-typed
196196

197197

198198
## Provisioning a role to a SCIM app
199-
Use the steps below to provision roles for a user to your application. Note that the description below is specific to custom SCIM applications. For gallery applications such as Salesforce and ServiceNow, use the predefined role mappings. The bullets below describe how to transform the AppRoleAssignments attribute to the format your application expects.
199+
Use the steps in the example to provision roles for a user to your application. Note that the description is specific to custom SCIM applications. For gallery applications such as Salesforce and ServiceNow, use the predefined role mappings. The bullets describe how to transform the AppRoleAssignments attribute to the format your application expects.
200200

201201
- Mapping an appRoleAssignment in Azure AD to a role in your application requires that you transform the attribute using an [expression](../app-provisioning/functions-for-customizing-application-data.md). The appRoleAssignment attribute **shouldn't be mapped directly** to a role attribute without using an expression to parse the role details.
202202

@@ -253,7 +253,7 @@ The request formats in the PATCH and POST differ. To ensure that POST and PATCH
253253

254254
![Add roles](./media/customize-application-attributes/add-roles.png)<br>
255255

256-
Then use the AppRoleAssignmentsComplex expression to map to the custom role attribute as shown in the image below:
256+
Then use the AppRoleAssignmentsComplex expression to map to the custom role attribute as shown in the image:
257257

258258
![Add AppRoleAssignmentsComplex](./media/customize-application-attributes/edit-attribute-approleassignmentscomplex.png)<br>
259259
- **Things to consider**
@@ -296,7 +296,7 @@ The request formats in the PATCH and POST differ. To ensure that POST and PATCH
296296

297297

298298
## Provisioning a multi-value attribute
299-
Certain attributes such as phoneNumbers and emails are multi-value attributes where you may need to specify different types of phone numbers or emails. Use the expression below for multi-value attributes. It allows you to specify the attribute type and map that to the corresponding Azure AD user attribute for the value.
299+
Certain attributes such as phoneNumbers and emails are multi-value attributes where you may need to specify different types of phone numbers or emails. Use the expression for multi-value attributes. It allows you to specify the attribute type and map that to the corresponding Azure AD user attribute for the value.
300300

301301
* phoneNumbers[type eq "work"].value
302302
* phoneNumbers[type eq "mobile"].value

articles/active-directory/app-provisioning/how-provisioning-works.md

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -74,8 +74,12 @@ You can use scoping filters to define attribute-based rules that determine which
7474

7575
### B2B (guest) users
7676

77-
It's possible to use the Azure AD user provisioning service to provision B2B (guest) users in Azure AD to SaaS applications.
78-
However, for B2B users to sign in to the SaaS application using Azure AD, the SaaS application must have its SAML-based single sign-on capability configured in a specific way. For more information on how to configure SaaS applications to support sign-ins from B2B users, see [Configure SaaS apps for B2B collaboration](../external-identities/configure-saas-apps.md).
77+
It's possible to use the Azure AD user provisioning service to provision B2B (guest) users in Azure AD to SaaS applications. However, for B2B users to sign in to the SaaS application using Azure AD, you must manually configure the SaaS application to use Azure AD as a Security Assertion Markup Language (SAML) identity provider.
78+
79+
Follow these general guidelines when configuring SaaS apps for B2B (guest) users:
80+
- For most of the apps, user setup needs to happen manually. Users must be created manually in the app as well.
81+
- For apps that support automatic setup, such as Dropbox, separate invitations are created from the apps. Users must be sure to accept each invitation.
82+
- In the user attributes, to mitigate any issues with mangled user profile disk (UPD) in guest users, always set the user identifier to **user.mail**.
7983

8084
> [!NOTE]
8185
> The userPrincipalName for a B2B user represents the external user's email address alias@theirdomain as "alias_theirdomain#EXT#@yourdomain". When the userPrincipalName attribute is included in your attribute mappings as a source attribute, and a B2B user is being provisioned, the #EXT# and your domain is stripped from the userPrincipalName, so only their original alias@theirdomain is used for matching or provisioning. If you require the full user principal name including #EXT# and your domain to be present, replace userPrincipalName with originalUserPrincipalName as the source attribute. <br />

articles/active-directory/develop/index-web-app.yml

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,8 +28,6 @@ landingContent:
2828
url: web-app-quickstart.md?pivots=devlang-java
2929
- text: Node.js with MSAL
3030
url: web-app-quickstart.md?pivots=devlang-nodejs-msal
31-
- text: Node.js with Passport
32-
url: web-app-quickstart.md?pivots=devlang-nodejs-passport
3331
- text: Python
3432
url: web-app-quickstart.md?pivots=devlang-python
3533
- title: "Learn by building"

articles/active-directory/develop/quickstart-v2-nodejs-webapp.md

Lines changed: 0 additions & 124 deletions
This file was deleted.

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

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ ms.service: active-directory
88
ms.subservice: develop
99
ms.topic: conceptual
1010
ms.workload: identity
11-
ms.date: 10/21/2022
11+
ms.date: 03/27/2023
1212
ms.author: owenrichards
1313
ms.custom: aaddev, devx-track-python, has-adal-ref, engagement-fy23
1414

@@ -215,6 +215,10 @@ There are various ways you can acquire tokens in a desktop application.
215215
- [Device code flow](scenario-desktop-acquire-token-device-code-flow.md)
216216

217217
---
218+
219+
> [!IMPORTANT]
220+
If users need to use multi-factor authentication (MFA) to log in to the application, they will be blocked instead.
221+
218222
## Next steps
219223

220224
Move on to the next article in this scenario,

0 commit comments

Comments
 (0)