Skip to content

Commit 0a64ad9

Browse files
committed
Merge branch 'main' of https://github.com/MicrosoftDocs/azure-docs-pr into 20230719-freshness
2 parents 994d1c7 + d8b00cf commit 0a64ad9

File tree

558 files changed

+4839
-3360
lines changed

Some content is hidden

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

558 files changed

+4839
-3360
lines changed

.openpublishing.redirection.json

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13338,6 +13338,16 @@
1333813338
"redirect_url": "/azure/governance/policy/samples/index",
1333913339
"redirect_document_id": false
1334013340
},
13341+
{
13342+
"source_path_from_root": "/articles/governance/policy/samples/PCIv3_2_1_2018_audit.md",
13343+
"redirect_url": "/azure/governance/policy/samples/pci-dss-3-2-1",
13344+
"redirect_document_id": false
13345+
},
13346+
{
13347+
"source_path_from_root": "/articles/governance/policy/samples/pci_dss_v4.0.md",
13348+
"redirect_url": "/azure/governance/policy/samples/pci-dss-4-0",
13349+
"redirect_document_id": false
13350+
},
1334113351
{
1334213352
"source_path_from_root": "/articles/azure-policy/create-manage-policy.md",
1334313353
"redirect_url": "/azure/governance/policy/tutorials/create-and-manage",

articles/active-directory-b2c/authorization-code-flow.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -124,7 +124,7 @@ grant_type=authorization_code&client_id=90c0fe63-bcf2-44d5-8fb7-b8bbc0b29dc6&sco
124124
| client_id |Required |The application ID assigned to your app in the [Azure portal](https://portal.azure.com).|
125125
| client_secret | Yes, in Web Apps | The application secret that was generated in the [Azure portal](https://portal.azure.com/). Client secrets are used in this flow for Web App scenarios, where the client can securely store a client secret. For Native App (public client) scenarios, client secrets cannot be securely stored, and therefore are not used in this call. If you use a client secret, please change it on a periodic basis. |
126126
| grant_type |Required |The type of grant. For the authorization code flow, the grant type must be `authorization_code`. |
127-
| scope |Required |A space-separated list of scopes. A single scope value indicates to Azure AD both of the permissions that are being requested. Using the client ID as the scope indicates that your app needs an access token that can be used against your own service or web API, represented by the same client ID. The `offline_access` scope indicates that your app needs a refresh token for long-lived access to resources. You also can use the `openid` scope to request an ID token from Azure AD B2C. |
127+
| scope |Recommended |A space-separated list of scopes. A single scope value indicates to Azure AD both of the permissions that are being requested. Using the client ID as the scope indicates that your app needs an access token that can be used against your own service or web API, represented by the same client ID. The `offline_access` scope indicates that your app needs a refresh token for long-lived access to resources. You also can use the `openid` scope to request an ID token from Azure AD B2C. |
128128
| code |Required |The authorization code that you acquired in from the `/authorize` endpoint. |
129129
| redirect_uri |Required |The redirect URI of the application where you received the authorization code. |
130130
| code_verifier | recommended | The same `code_verifier` used to obtain the authorization code. Required if PKCE was used in the authorization code grant request. For more information, see the [PKCE RFC](https://tools.ietf.org/html/rfc7636). |

articles/active-directory/app-provisioning/application-provisioning-config-problem-scim-compatibility.md

Lines changed: 7 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ This article describes current and past issues with the Azure AD user provisioni
2424
## Understanding the provisioning job
2525
The provisioning service uses the concept of a job to operate against an application. The jobID can be found in the [progress bar](application-provisioning-when-will-provisioning-finish-specific-user.md#view-the-provisioning-progress-bar). All new provisioning applications are created with a jobID starting with "scim". The scim job represents the current state of the service. Older jobs have the ID "customappsso". This job represents the state of the service in 2018.
2626

27-
If you are using an application in the gallery, the job generally contains the name of the app (e.g. zoom snowFlake, dataBricks, etc.). You can skip this documentation when using a gallery application. This primarily applies for non-gallery applications with jobID SCIM or customAppSSO.
27+
If you are using an application in the gallery, the job generally contains the name of the app (such as zoom snowFlake or dataBricks). You can skip this documentation when using a gallery application. This primarily applies for non-gallery applications with jobID SCIM or customAppSSO.
2828

2929
## SCIM 2.0 compliance issues and status
3030
In the table below, any item marked as fixed means that the proper behavior can be found on the SCIM job. We have worked to ensure backwards compatibility for the changes we have made. We recommend using the new behavior for any new implementations and updating existing implementations. Please note that the customappSSO behavior that was the default prior to December 2018 is not supported anymore.
@@ -234,13 +234,12 @@ Below are sample requests to help outline what the sync engine currently sends v
234234

235235

236236
## Upgrading from the older customappsso job to the SCIM job
237-
Following the steps below will delete your existing customappsso job and create a new scim job.
237+
Following the steps below will delete your existing customappsso job and create a new SCIM job.
238238

239-
1. Sign into the Azure portal at https://portal.azure.com.
239+
1. Sign into the [Azure portal](https://portal.azure.com).
240240
2. In the **Azure Active Directory > Enterprise Applications** section of the Azure portal, locate and select your existing SCIM application.
241241
3. In the **Properties** section of your existing SCIM app, copy the **Object ID**.
242-
4. In a new web browser window, go to https://developer.microsoft.com/graph/graph-explorer
243-
and sign in as the administrator for the Azure AD tenant where your app is added.
242+
4. In a new web browser window, go to https://developer.microsoft.com/graph/graph-explorer and sign in as the administrator for the Azure AD tenant where your app is added.
244243
5. In the Graph Explorer, run the command below to locate the ID of your provisioning job. Replace "[object-id]" with the service principal ID (object ID) copied from the third step.
245244

246245
`GET https://graph.microsoft.com/beta/servicePrincipals/[object-id]/synchronization/jobs`
@@ -276,11 +275,10 @@ Following the steps below will delete your existing customappsso job and create
276275
## Downgrading from the SCIM job to the customappsso job (not recommended)
277276
We allow you to downgrade back to the old behavior but don't recommend it as the customappsso does not benefit from some of the updates we make, and may not be supported forever.
278277

279-
1. Sign into the Azure portal at https://portal.azure.com.
280-
2. in the **Azure Active Directory > Enterprise Applications > Create application** section of the Azure portal, create a new **Non-gallery** application.
278+
1. Sign into the [Azure portal](https://portal.azure.com).
279+
2. In the **Azure Active Directory > Enterprise Applications > Create application** section of the Azure portal, create a new **Non-gallery** application.
281280
3. In the **Properties** section of your new custom app, copy the **Object ID**.
282-
4. In a new web browser window, go to https://developer.microsoft.com/graph/graph-explorer
283-
and sign in as the administrator for the Azure AD tenant where your app is added.
281+
4. In a new web browser window, go to https://developer.microsoft.com/graph/graph-explorer and sign in as the administrator for the Azure AD tenant where your app is added.
284282
5. In the Graph Explorer, run the command below to initialize the provisioning configuration for your app.
285283
Replace "[object-id]" with the service principal ID (object ID) copied from the third step.
286284

articles/active-directory/app-provisioning/configure-automatic-user-provisioning-portal.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ This article describes the general steps for managing automatic user account pro
2424

2525
Use the Azure portal to view and manage all applications that are configured for single sign-on in a directory. Enterprise apps are apps that are deployed and used within your organization. Follow these steps to view and manage your enterprise applications:
2626

27-
1. Open the [Azure portal](https://portal.azure.com).
27+
1. Sign in to the [Azure portal](https://portal.azure.com).
2828
1. Browse to **Azure Active Directory** > **Enterprise applications**.
2929
1. A list of all configured apps is shown, including apps that were added from the gallery.
3030
1. Select any app to load its resource pane, where you can view reports and manage app settings.

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

Lines changed: 90 additions & 83 deletions
Original file line numberDiff line numberDiff line change
@@ -118,7 +118,7 @@ Applications and systems that support customization of the attribute list includ
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](#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.
@@ -157,60 +157,63 @@ Custom attributes can't be referential attributes, multi-value or complex-typed
157157
**Example representation of a user with an extension attribute:**
158158

159159
```json
160-
{
161-
"schemas": ["urn:ietf:params:scim:schemas:core:2.0:User",
162-
"urn:ietf:params:scim:schemas:extension:enterprise:2.0:User"],
163-
"userName":"bjensen",
164-
"id": "48af03ac28ad4fb88478",
165-
"externalId":"bjensen",
166-
"name":{
167-
"formatted":"Ms. Barbara J Jensen III",
168-
"familyName":"Jensen",
169-
"givenName":"Barbara"
170-
},
171-
"urn:ietf:params:scim:schemas:extension:enterprise:2.0:User": {
172-
"employeeNumber": "701984",
173-
"costCenter": "4130",
174-
"organization": "Universal Studios",
175-
"division": "Theme Park",
176-
"department": "Tour Operations",
177-
"manager": {
178-
"value": "26118915-6090-4610-87e4-49d8ca9f808d",
179-
"$ref": "../Users/26118915-6090-4610-87e4-49d8ca9f808d",
180-
"displayName": "John Smith"
181-
}
182-
},
183-
"urn:ietf:params:scim:schemas:extension:CustomExtensionName:2.0:User": {
184-
"CustomAttribute": "701984",
185-
},
186-
"meta": {
187-
"resourceType": "User",
188-
"created": "2010-01-23T04:56:22Z",
189-
"lastModified": "2011-05-13T04:42:34Z",
190-
"version": "W\/\"3694e05e9dff591\"",
191-
"location":
192-
"https://example.com/v2/Users/2819c223-7f76-453a-919d-413861904646"
193-
}
194-
}
160+
{
161+
"schemas":[
162+
"urn:ietf:params:scim:schemas:core:2.0:User",
163+
"urn:ietf:params:scim:schemas:extension:enterprise:2.0:User"
164+
],
165+
"userName":"bjensen",
166+
"id": "48af03ac28ad4fb88478",
167+
"externalId":"bjensen",
168+
"name":{
169+
"formatted":"Ms. Barbara J Jensen III",
170+
"familyName":"Jensen",
171+
"givenName":"Barbara"
172+
},
173+
"urn:ietf:params:scim:schemas:extension:enterprise:2.0:User": {
174+
"employeeNumber": "701984",
175+
"costCenter": "4130",
176+
"organization": "Universal Studios",
177+
"division": "Theme Park",
178+
"department": "Tour Operations",
179+
"manager": {
180+
"value": "26118915-6090-4610-87e4-49d8ca9f808d",
181+
"$ref": "../Users/26118915-6090-4610-87e4-49d8ca9f808d",
182+
"displayName": "John Smith"
183+
}
184+
},
185+
"urn:ietf:params:scim:schemas:extension:CustomExtensionName:2.0:User": {
186+
"CustomAttribute": "701984",
187+
},
188+
"meta": {
189+
"resourceType": "User",
190+
"created": "2010-01-23T04:56:22Z",
191+
"lastModified": "2011-05-13T04:42:34Z",
192+
"version": "W\/\"3694e05e9dff591\"",
193+
"location": "https://example.com/v2/Users/2819c223-7f76-453a-919d-413861904646"
194+
}
195+
}
195196
```
196197

197-
198198
## Provisioning a role to a SCIM app
199199
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

203-
- **SingleAppRoleAssignment**
203+
- **SingleAppRoleAssignment**
204+
204205
- **When to use:** Use the SingleAppRoleAssignment expression to provision a single role for a user and to specify the primary role.
205206
- **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.
206207

207-
![Add SingleAppRoleAssignment](./media/customize-application-attributes/edit-attribute-singleapproleassignment.png)
208+
![Add SingleAppRoleAssignment](./media/customize-application-attributes/edit-attribute-singleapproleassignment.png)
209+
208210
- **Things to consider**
209211
- Ensure that multiple roles aren't assigned to a user. There's no guarantee which role is provisioned.
210212
- SingleAppRoleAssignments isn't compatible with setting scope to "Sync All users and groups."
213+
211214
- **Example request (POST)**
212215

213-
```json
216+
```json
214217
{
215218
"schemas": [
216219
"urn:ietf:params:scim:schemas:core:2.0:User"
@@ -229,25 +232,29 @@ Use the steps in the example to provision roles for a user to your application.
229232
"value": "Admin"
230233
}
231234
]
232-
}
233-
```
234-
235+
}
236+
```
237+
235238
- **Example output (PATCH)**
236-
237-
```json
238-
"Operations": [
239-
{
240-
"op": "Add",
241-
"path": "roles",
242-
"value": [
243-
{
244-
"value": "{\"id\":\"06b07648-ecfe-589f-9d2f-6325724a46ee\",\"value\":\"25\",\"displayName\":\"Role1234\"}"
245-
}
246-
]
247-
```
239+
240+
```json
241+
"Operations": [
242+
{
243+
"op": "Add",
244+
"path": "roles",
245+
"value": [
246+
{
247+
"value": "{\"id\":\"06b07648-ecfe-589f-9d2f-6325724a46ee\",\"value\":\"25\",\"displayName\":\"Role1234\"}"
248+
}
249+
]
250+
}
251+
]
252+
```
253+
248254
The request formats in the PATCH and POST differ. To ensure that POST and PATCH are sent in the same format, you can use the feature flag described [here](./application-provisioning-config-problem-scim-compatibility.md#flags-to-alter-the-scim-behavior).
249255

250-
- **AppRoleAssignmentsComplex**
256+
- **AppRoleAssignmentsComplex**
257+
251258
- **When to use:** Use the AppRoleAssignmentsComplex expression to provision multiple roles for a user.
252259
- **How to configure:** Edit the list of supported attributes as described to include a new attribute for roles:
253260

@@ -256,16 +263,18 @@ The request formats in the PATCH and POST differ. To ensure that POST and PATCH
256263
Then use the AppRoleAssignmentsComplex expression to map to the custom role attribute as shown in the image:
257264

258265
![Add AppRoleAssignmentsComplex](./media/customize-application-attributes/edit-attribute-approleassignmentscomplex.png)<br>
266+
259267
- **Things to consider**
268+
260269
- All roles are provisioned as primary = false.
261270
- 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.
262271
- AppRoleAssignmentsComplex isn't compatible with setting scope to "Sync All users and groups."
263272
- The AppRoleAssignmentsComplex only supports the PATCH add function. For multi-role SCIM applications, roles deleted in Azure Active Directory will therefore not be deleted from the application. We're working to support additional PATCH functions and address the limitation.
264273

265-
- **Example output**
274+
- **Example output**
266275

267-
```json
268-
{
276+
```json
277+
{
269278
"schemas": [
270279
"urn:ietf:params:scim:schemas:core:2.0:User"
271280
],
@@ -290,35 +299,33 @@ The request formats in the PATCH and POST differ. To ensure that POST and PATCH
290299
"value": "User"
291300
}
292301
]
293-
}
294-
```
295-
296-
297-
302+
}
303+
```
298304

299305
## Provisioning a multi-value attribute
306+
300307
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.
301308

302-
* phoneNumbers[type eq "work"].value
303-
* phoneNumbers[type eq "mobile"].value
304-
* phoneNumbers[type eq "fax"].value
309+
* `phoneNumbers[type eq "work"].value`
310+
* `phoneNumbers[type eq "mobile"]`.value
311+
* `phoneNumbers[type eq "fax"].value`
305312

306-
```json
307-
"phoneNumbers": [
308-
{
309-
"value": "555-555-5555",
310-
"type": "work"
311-
},
312-
{
313-
"value": "555-555-5555",
314-
"type": "mobile"
315-
},
316-
{
317-
"value": "555-555-5555",
318-
"type": "fax"
319-
}
320-
]
321-
```
313+
```json
314+
"phoneNumbers": [
315+
{
316+
"value": "555-555-5555",
317+
"type": "work"
318+
},
319+
{
320+
"value": "555-555-5555",
321+
"type": "mobile"
322+
},
323+
{
324+
"value": "555-555-5555",
325+
"type": "fax"
326+
}
327+
]
328+
```
322329

323330
## Restoring the default attributes and attribute-mappings
324331

0 commit comments

Comments
 (0)