Skip to content

Commit edc98f7

Browse files
authored
Merge pull request #259519 from MicrosoftDocs/main
Publish to live, Monday 4 AM PST, 11/27
2 parents 27cd4fc + f553193 commit edc98f7

File tree

14 files changed

+138
-57
lines changed

14 files changed

+138
-57
lines changed

articles/active-directory-b2c/add-api-connector-token-enrichment.md

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ ms.author: godonnell
1515
ms.subservice: B2C
1616
zone_pivot_groups: b2c-policy-type
1717
---
18+
1819
# Enrich tokens with claims from external sources using API connectors
1920
[!INCLUDE [active-directory-b2c-choose-user-flow-or-custom-policy](../../includes/active-directory-b2c-choose-user-flow-or-custom-policy.md)]
2021
Azure Active Directory B2C (Azure AD B2C) enables identity developers to integrate an interaction with a RESTful API into their user flow using [API connectors](api-connectors-overview.md). It enables developers to dynamically retrieve data from external identity sources. At the end of this walkthrough, you'll be able to create an Azure AD B2C user flow that interacts with APIs to enrich tokens with information from external sources.
@@ -98,6 +99,7 @@ Additionally, these claims are typically sent in all requests for this step:
9899

99100
> [!IMPORTANT]
100101
> If a claim does not have a value at the time the API endpoint is called, the claim will not be sent to the API. Your API should be designed to explicitly check and handle the case in which a claim is not in the request.
102+
101103
## Expected response types from the web API at this step
102104
When the web API receives an HTTP request from Microsoft Entra ID during a user flow, it can return a "continuation response."
103105
### Continuation response
@@ -106,6 +108,7 @@ In a continuation response, the API can return additional claims. A claim return
106108
The claim value in the token will be that returned by the API, not the value in the directory. Some claim values cannot be overwritten by the API response. Claims that can be returned by the API correspond to the set found under **User attributes** with the exception of `email`.
107109
> [!NOTE]
108110
> The API is only invoked during an initial authentication. When using refresh tokens to silently get new access or ID tokens, the token will include the values evaluated during the initial authentication.
111+
109112
## Example response
110113
### Example of a continuation response
111114
```http
@@ -132,6 +135,7 @@ You can also design the interaction as a validation technical profile. This is s
132135
## Prerequisites
133136
- Complete the steps in [Get started with custom policies](tutorial-create-user-flows.md?pivots=b2c-custom-policy). You should have a working custom policy for sign-up and sign-in with local accounts.
134137
- Learn how to [Integrate REST API claims exchanges in your Azure AD B2C custom policy](api-connectors-overview.md).
138+
135139
## Prepare a REST API endpoint
136140
For this walkthrough, you should have a REST API that validates whether a user's Azure AD B2C objectId is registered in your back-end system.
137141
If registered, the REST API returns the user account balance. Otherwise, the REST API registers the new account in the directory and returns the starting balance `50.00`.
@@ -155,6 +159,7 @@ A claim provides temporary storage of data during an Azure AD B2C policy executi
155159
1. Search for the [BuildingBlocks](buildingblocks.md) element. If the element doesn't exist, add it.
156160
1. Locate the [ClaimsSchema](claimsschema.md) element. If the element doesn't exist, add it.
157161
1. Add the following claims to the **ClaimsSchema** element.
162+
158163
```xml
159164
<ClaimType Id="balance">
160165
<DisplayName>Your Balance</DisplayName>
@@ -205,6 +210,7 @@ After you deploy your REST API, set the metadata of the `REST-GetProfile` techni
205210
- **AuthenticationType**. Set the type of authentication being performed by the RESTful claims provider such as `Basic` or `ClientCertificate`
206211
- **AllowInsecureAuthInProduction**. In a production environment, make sure to set this metadata to `false`.
207212

213+
208214
See the [RESTful technical profile metadata](restful-technical-profile.md#metadata) for more configurations.
209215
The comments above `AuthenticationType` and `AllowInsecureAuthInProduction` specify changes you should make when you move to a production environment. To learn how to secure your RESTful APIs for production, see [Secure your RESTful API](secure-rest-api.md).
210216
## Add an orchestration step
@@ -231,6 +237,7 @@ The comments above `AuthenticationType` and `AllowInsecureAuthInProduction` spec
231237
<OrchestrationStep Order="8" Type="SendClaims" CpimIssuerTechnicalProfileReferenceId="JwtIssuer" />
232238
```
233239
1. Repeat the last two steps for the **ProfileEdit** and **PasswordReset** user journeys.
240+
234241
## Include a claim in the token
235242
To return the `balance` claim back to the relying party application, add an output claim to the <em>`SocialAndLocalAccounts/`**`SignUpOrSignIn.xml`**</em> file. Adding an output claim will issue the claim into the token after a successful user journey, and will be sent to the application. Modify the technical profile element within the relying party section to add `balance` as an output claim.
236243

@@ -258,13 +265,14 @@ Repeat this step for the **ProfileEdit.xml**, and **PasswordReset.xml** user jou
258265
Save the files you changed: *TrustFrameworkBase.xml*, and *TrustFrameworkExtensions.xml*, *SignUpOrSignin.xml*, *ProfileEdit.xml*, and *PasswordReset.xml*.
259266
## Test the custom policy
260267
1. Sign in to the [Azure portal](https://portal.azure.com).
261-
1. If you have access to multiple tenants, select the **Settings** icon in the top menu to switch to your Azure AD B2C tenant from the **Directories + subscriptions** menu.
268+
1. If you have access to multiple tenants, select the **Settings** icon in the top menu to switch to your Microsoft Entra tenant from the **Directories + subscriptions** menu.
262269
1. Choose **All services** in the top-left corner of the Azure portal, and then search for and select **App registrations**.
263270
1. Select **Identity Experience Framework**.
264271
1. Select **Upload Custom Policy**, and then upload the policy files that you changed: *TrustFrameworkBase.xml*, and *TrustFrameworkExtensions.xml*, *SignUpOrSignin.xml*, *ProfileEdit.xml*, and *PasswordReset.xml*.
265272
1. Select the sign-up or sign-in policy that you uploaded, and click the **Run now** button.
266273
1. You should be able to sign up using an email address or a Facebook account.
267274
1. The token sent back to your application includes the `balance` claim.
275+
268276
```json
269277
{
270278
"typ": "JWT",
@@ -324,21 +332,25 @@ In general, it's helpful to use the logging tools enabled by your web API servic
324332
* A 401 or 403 HTTP status code typically indicates there's an issue with your authentication. Double-check your API's authentication layer and the corresponding configuration in the API connector.
325333
* Use more aggressive levels of logging (for example "trace" or "debug") in development if needed.
326334
* Monitor your API for long response times.
335+
327336
Additionally, Azure AD B2C logs metadata about the API transactions that happen during user authentications via a user flow. To find these:
328337
1. Go to **Azure AD B2C**
329338
1. Under **Activities**, select **Audit logs**.
330339
1. Filter the list view: For **Date**, select the time interval you want, and for **Activity**, select **An API was called as part of a user flow**.
331340
1. Inspect individual logs. Each row represents an API connector attempting to be called during a user flow. If an API call fails and a retry occurs, it's still represented as a single row. The `numberOfAttempts` indicates the number of times your API was called. This value can be `1`or `2`. Other information about the API call is detailed in the logs.
332341
![Screenshot of an example audit log with API connector transaction.](media/add-api-connector-token-enrichment/example-anonymized-audit-log.png)
342+
333343
::: zone-end
334344
## Next steps
335345
::: zone pivot="b2c-user-flow"
336346
- Get started with our [samples](api-connector-samples.md#api-connector-rest-api-samples).
337347
- [Secure your API Connector](secure-rest-api.md)
348+
338349
::: zone-end
339350
::: zone pivot="b2c-custom-policy"
340351
To learn how to secure your APIs, see the following articles:
341352
- [Walkthrough: Integrate REST API claims exchanges in your Azure AD B2C user journey as an orchestration step](add-api-connector-token-enrichment.md)
342353
- [Secure your RESTful API](secure-rest-api.md)
343354
- [Reference: RESTful technical profile](restful-technical-profile.md)
355+
344356
::: zone-end

articles/azure-app-configuration/quickstart-azure-kubernetes-service.md

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -289,10 +289,11 @@ Add following key-values to the App Configuration store and leave **Label** and
289289
mountPath: /app
290290
volumes:
291291
- name: config-volume
292-
configMap: configmap-created-by-appconfig-provider
293-
items:
294-
- key: mysettings.json
295-
path: mysettings.json
292+
configMap:
293+
name: configmap-created-by-appconfig-provider
294+
items:
295+
- key: mysettings.json
296+
path: mysettings.json
296297
```
297298
298299
3. Run the following command to deploy the changes. Replace the namespace if you are using your existing AKS application.

articles/azure-arc/system-center-virtual-machine-manager/overview.md

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
---
22
title: Overview of the Azure Connected System Center Virtual Machine Manager
33
description: This article provides a detailed overview of the Azure Arc-enabled System Center Virtual Machine Manager.
4-
ms.date: 11/15/2023
4+
ms.date: 11/27/2023
55
ms.topic: conceptual
66
ms.services: azure-arc
77
ms.subservice: azure-arc-scvmm
@@ -22,9 +22,9 @@ Arc-enabled System Center VMM allows you to:
2222

2323
- Perform various VM lifecycle operations such as start, stop, pause, and delete VMs on SCVMM managed VMs directly from Azure.
2424
- Empower developers and application teams to self-serve VM operations on demand using [Azure role-based access control (RBAC)](https://learn.microsoft.com/azure/role-based-access-control/overview).
25-
- Browse your VMM resources (VMs, templates, VM networks, and storage) in Azure, providing you a single pane view for your infrastructure across both environments.
25+
- Browse your VMM resources (VMs, templates, VM networks, and storage) in Azure, providing you with a single pane view for your infrastructure across both environments.
2626
- Discover and onboard existing SCVMM managed VMs to Azure.
27-
- Install the Arc-connected machine agents at scale on SCVMM VMs to [govern, protect, configure, and monitor them](https://learn.microsoft.com/azure/azure-arc/servers/overview#supported-cloud-operations).
27+
- Install the Arc-connected machine agents at scale on SCVMM VMs to [govern, protect, configure, and monitor them](../servers/overview.md#supported-cloud-operations).
2828

2929
## Onboard resources to Azure management at scale
3030

@@ -47,7 +47,7 @@ The following image shows the architecture for the Arc-enabled SCVMM:
4747
- Azure Arc-enabled servers interact on the guest operating system level, with no awareness of the underlying infrastructure fabric and the virtualization platform that they're running on. Since Arc-enabled servers also support bare-metal machines, there might, in fact, not even be a host hypervisor in some cases.
4848
- Azure Arc-enabled SCVMM is a superset of Arc-enabled servers that extends management capabilities beyond the guest operating system to the VM itself. This provides lifecycle management and CRUD (Create, Read, Update, and Delete) operations on an SCVMM VM. These lifecycle management capabilities are exposed in the Azure portal and look and feel just like a regular Azure VM. Azure Arc-enabled SCVMM also provides guest operating system management, in fact, it uses the same components as Azure Arc-enabled servers.
4949

50-
You have the flexibility to start with either option, or incorporate the other one later without any disruption. With both options, you will enjoy the same consistent experience.
50+
You have the flexibility to start with either option, or incorporate the other one later without any disruption. With both options, you'll enjoy the same consistent experience.
5151

5252
### Supported scenarios
5353

@@ -57,20 +57,21 @@ The following scenarios are supported in Azure Arc-enabled SCVMM:
5757
- Administrators can use the Azure portal to browse SCVMM inventory and register SCVMM cloud, virtual machines, VM networks, and VM templates into Azure.
5858
- Administrators can provide app teams/developers fine-grained permissions on those SCVMM resources through Azure RBAC.
5959
- App teams can use Azure interfaces (portal, CLI, or REST API) to manage the lifecycle of on-premises VMs they use for deploying their applications (CRUD, Start/Stop/Restart).
60-
- Administrators can install Arc agents on SCVMM VMs at-scale and install corresponding extensions to leverage Azure management services like Microsoft Defender for Cloud, Azure Update Manager, Azure Monitor, etc.
60+
- Administrators can install Arc agents on SCVMM VMs at-scale and install corresponding extensions to use Azure management services like Microsoft Defender for Cloud, Azure Update Manager, Azure Monitor, etc.
6161

6262
### Supported VMM versions
6363

64-
Azure Arc-enabled SCVMM works with VMM 2019 and 2022 versions and supports SCVMM management servers with a maximum of 15000 VMs.
64+
Azure Arc-enabled SCVMM works with VMM 2019 and 2022 versions and supports SCVMM management servers with a maximum of 15,000 VMs.
6565

6666
### Supported regions
6767

6868
Azure Arc-enabled SCVMM is currently supported in the following regions:
6969

7070
- East US
71-
- East US2
72-
- West US2
73-
- West US3
71+
- East US 2
72+
- West US 2
73+
- West US 3
74+
- Central US
7475
- South Central US
7576
- UK South
7677
- North Europe

0 commit comments

Comments
 (0)