Skip to content

Commit b7c5bd2

Browse files
committed
Merge branch 'main' of https://github.com/MicrosoftDocs/azure-docs-pr into mrb_03_27_2023_fine_tuning
2 parents 67ec50b + d987cda commit b7c5bd2

File tree

482 files changed

+9730
-4977
lines changed

Some content is hidden

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

482 files changed

+9730
-4977
lines changed

.openpublishing.redirection.azure-productivity.json

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -144,6 +144,11 @@
144144
"source_path": "articles/lab-services/quick-create-lab-template.md",
145145
"redirect_url": "/azure/lab-services/how-to-create-lab-template",
146146
"redirect_document_id": true
147+
},
148+
{
149+
"source_path": "articles/lab-services/classroom-labs-faq.yml",
150+
"redirect_url": "/azure/lab-services/lab-services-overview",
151+
"redirect_document_id": false
147152
}
148153
]
149154
}

.openpublishing.redirection.defender-for-cloud.json

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -809,6 +809,11 @@
809809
"source_path_from_root": "/articles/defender-for-cloud/faq-azure-monitor-logs.yml",
810810
"redirect_url": "/azure/defender-for-cloud/faq-data-collection-agents",
811811
"redirect_document_id": true
812+
},
813+
{
814+
"source_path_from_root": "/articles/defender-for-cloud/defender-for-storage-exclude.md",
815+
"redirect_url": "/azure/defender-for-cloud/defender-for-storage-classic-enable#exclude-a-storage-account-from-a-protected-subscription-in-the-per-transaction-plan",
816+
"redirect_document_id": true
812817
}
813818
]
814819
}

.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: 14 additions & 14 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/28/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,11 +114,11 @@ 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]
121-
> Editing the list of supported attributes is only recommended for administrators who have customized the schema of their applications and systems, and have first-hand knowledge of how their custom attributes have been defined or if a source attribute isn't automatically displayed in the Azure Portal UI. This sometimes requires familiarity with the APIs and developer tools provided by an application or system. The ability to edit the list of supported attributes is locked down by default, but customers can enable the capability by navigating to the following URL: https://portal.azure.com/?Microsoft_AAD_Connect_Provisioning_forceSchemaEditorEnabled=true . You can then navigate to your application to view the attribute list as described [above](#editing-the-list-of-supported-attributes).
121+
> Editing the list of supported attributes is only recommended for administrators who have customized the schema of their applications and systems, and have first-hand knowledge of how their custom attributes have been defined or if a source attribute isn't automatically displayed in the Azure Portal UI. This sometimes requires familiarity with the APIs and developer tools provided by an application or system. The ability to edit the list of supported attributes is locked down by default, but customers can enable the capability by navigating to the following URL: https://portal.azure.com/?Microsoft_AAD_Connect_Provisioning_forceSchemaEditorEnabled=true . You can then navigate to your application to view the [attribute list](#editing-the-list-of-supported-attributes).
122122
123123
> [!NOTE]
124124
> When a directory extension attribute in Azure AD doesn't show up automatically in your attribute mapping drop-down, you can manually add it to the "Azure AD attribute list". When manually adding Azure AD directory extension attributes to your provisioning app, note that directory extension attribute names are case-sensitive. For example: If you have a directory extension attribute named `extension_53c9e2c0exxxxxxxxxxxxxxxx_acmeCostCenter`, make sure you enter it in the same format as defined in the directory.
@@ -138,7 +138,7 @@ When you're editing the list of supported attributes, the following properties a
138138
- **Multi-value?** - Whether the attribute supports multiple values.
139139
- **Exact case?** - Whether the attributes values are evaluated in a case-sensitive way.
140140
- **API Expression** - Don't use, unless instructed to do so by the documentation for a specific provisioning connector (such as Workday).
141-
- **Referenced Object Attribute** - If it's a Reference type attribute, then this menu lets you select the table and attribute in the target application that contains the value associated with the attribute. For example, if you have an attribute named "Department" whose stored value references an object in a separate "Departments" table, you would select "Departments.Name". The reference tables and the primary ID fields supported for a given application are preconfigured and currently can't be edited using the Azure portal, but can be edited using the [Microsoft Graph API](/graph/api/resources/synchronization-configure-with-custom-target-attributes).
141+
- **Referenced Object Attribute** - If it's a Reference type attribute, then this menu lets you select the table and attribute in the target application that contains the value associated with the attribute. For example, if you have an attribute named "Department" whose stored value references an object in a separate "Departments" table, you would select "Departments.Name". The reference tables and the primary ID fields supported for a given application are preconfigured and can't be edited using the Azure portal. However, you can edit them using the [Microsoft Graph API](/graph/api/resources/synchronization-configure-with-custom-target-attributes).
142142

143143
#### Provisioning a custom extension attribute to a SCIM compliant application
144144
The SCIM RFC defines a core user and group schema, while also allowing for extensions to the schema to meet your application's needs. To add a custom attribute to a SCIM application:
@@ -148,11 +148,11 @@ 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

155-
Custom attributes can't be referential attributes, multi-value or complex-typed attributes. Custom multi-value and complex-typed extension attributes are currently supported only for applications in the gallery. The custom extension schema header is omitted in the example because it isn't sent in requests from the Azure AD SCIM client. This issue will be fixed in the future and the header will be sent in the request.
155+
Custom attributes can't be referential attributes, multi-value or complex-typed attributes. Custom multi-value and complex-typed extension attributes are currently supported only for applications in the gallery. The custom extension schema header is omitted in the example because it isn't sent in requests from the Azure AD SCIM client.
156156

157157
**Example representation of a user with an extension attribute:**
158158

@@ -196,17 +196,17 @@ 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. 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

203203
- **SingleAppRoleAssignment**
204204
- **When to use:** Use the SingleAppRoleAssignment expression to provision a single role for a user and to specify the primary role.
205-
- **How to configure:** Use the steps described above to navigate to the attribute mappings page and use the SingleAppRoleAssignment expression to map to the roles attribute. There are three role attributes to choose from (`roles[primary eq "True"].display`, `roles[primary eq "True"].type`, and `roles[primary eq "True"].value`). You can choose to include any or all of the role attributes in your mappings. If you would like to include more than one, just add a new mapping and include it as the target attribute.
205+
- **How to configure:** Use the steps described to navigate to the attribute mappings page and use the SingleAppRoleAssignment expression to map to the roles attribute. There are three role attributes to choose from (`roles[primary eq "True"].display`, `roles[primary eq "True"].type`, and `roles[primary eq "True"].value`). You can choose to include any or all of the role attributes in your mappings. If you would like to include more than one, just add a new mapping and include it as the target attribute.
206206

207207
![Add SingleAppRoleAssignment](./media/customize-application-attributes/edit-attribute-singleapproleassignment.png)
208208
- **Things to consider**
209-
- Ensure that multiple roles aren't assigned to a user. We can't guarantee which role will be provisioned.
209+
- Ensure that multiple roles aren't assigned to a user. There is no guarantee which role is provisioned.
210210
- SingleAppRoleAssignments isn't compatible with setting scope to "Sync All users and groups."
211211
- **Example request (POST)**
212212

@@ -249,15 +249,15 @@ The request formats in the PATCH and POST differ. To ensure that POST and PATCH
249249

250250
- **AppRoleAssignmentsComplex**
251251
- **When to use:** Use the AppRoleAssignmentsComplex expression to provision multiple roles for a user.
252-
- **How to configure:** Edit the list of supported attributes as described above to include a new attribute for roles:
252+
- **How to configure:** Edit the list of supported attributes as described to include a new attribute for roles:
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**
260-
- All roles will be provisioned as primary = false.
260+
- All roles are provisioned as primary = false.
261261
- The POST contains the role type. The PATCH request doesn't contain type. We're working on sending the type in both POST and PATCH requests.
262262
- AppRoleAssignmentsComplex isn't compatible with setting scope to "Sync All users and groups."
263263

@@ -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

0 commit comments

Comments
 (0)