Skip to content

Commit 180cb7c

Browse files
authored
Merge branch 'MicrosoftDocs:main' into content-health-1
2 parents a68d997 + 427ffc7 commit 180cb7c

File tree

344 files changed

+6419
-3892
lines changed

Some content is hidden

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

344 files changed

+6419
-3892
lines changed

.openpublishing.publish.config.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -950,6 +950,7 @@
950950
"articles/iot-accelerators/.openpublishing.redirection.iot-accelerators.json",
951951
"articles/iot-develop/.openpublishing.redirection.iot-develop.json",
952952
"articles/iot-edge/.openpublishing.redirection.iot-edge.json",
953+
"articles/iot-fundamentals/.openpublishing.redirection.iot-fundamentals.json",
953954
"articles/mariadb/.openpublishing.redirection.mariadb.json",
954955
"articles/marketplace/.openpublishing.redirection.marketplace.json",
955956
"articles/mysql/.openpublishing.redirection.mysql.json",

.openpublishing.redirection.azure-monitor.json

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5541,6 +5541,36 @@
55415541
"source_path_from_root": "/articles/azure-monitor/logs/api/authentication-authorization.md",
55425542
"redirect_url": "/azure/azure-monitor/logs/api/access-api",
55435543
"redirect_document_id": false
5544+
},
5545+
{
5546+
"source_path_from_root": "/articles/azure-monitor/app/java-2x-get-started.md",
5547+
"redirect_url": "/azure/azure-monitor/app/deprecated-java-2x",
5548+
"redirect_document_id": false
5549+
},
5550+
{
5551+
"source_path_from_root": "/articles/azure-monitor/app/java-2x-trace-logs.md",
5552+
"redirect_url": "/azure/azure-monitor/app/deprecated-java-2x",
5553+
"redirect_document_id": false
5554+
},
5555+
{
5556+
"source_path_from_root": "/articles/azure-monitor/app/java-2x-agent.md",
5557+
"redirect_url": "/azure/azure-monitor/app/deprecated-java-2x",
5558+
"redirect_document_id": false
5559+
},
5560+
{
5561+
"source_path_from_root": "/articles/azure-monitor/app/java-2x-filter-telemetry.md",
5562+
"redirect_url": "/azure/azure-monitor/app/deprecated-java-2x",
5563+
"redirect_document_id": false
5564+
},
5565+
{
5566+
"source_path_from_root": "/articles/azure-monitor/app/java-2x-collectd.md",
5567+
"redirect_url": "/azure/azure-monitor/app/deprecated-java-2x",
5568+
"redirect_document_id": false
5569+
},
5570+
{
5571+
"source_path_from_root": "/articles/azure-monitor/app/java-2x-micrometer.md",
5572+
"redirect_url": "/azure/azure-monitor/app/deprecated-java-2x",
5573+
"redirect_document_id": false
55445574
}
55455575
]
55465576
}

.openpublishing.redirection.healthcare-apis.json

Lines changed: 2 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -194,8 +194,8 @@
194194
},
195195
{
196196
"source_path_from_root": "/articles/healthcare-apis/use-smart-on-fhir-proxy.md",
197-
"redirect_url": "/azure/healthcare-apis/fhir/use-smart-on-fhir-proxy",
198-
"redirect_document_id": true
197+
"redirect_url": "/azure/healthcare-apis/azure-api-for-fhir/smart-on-fhir",
198+
"redirect_document_id": false
199199
},
200200
{
201201
"source_path_from_root": "/articles/healthcare-apis/fhir/use-custom-headers.md",
@@ -357,11 +357,6 @@
357357
"redirect_url": "/azure/healthcare-apis/azure-api-for-fhir/tutorial-web-app-write-web-app",
358358
"redirect_document_id": true
359359
},
360-
{
361-
"source_path_from_root": "/articles/healthcare-apis/fhir/use-smart-on-fhir-proxy.md",
362-
"redirect_url": "/azure/healthcare-apis/azure-api-for-fhir/use-smart-on-fhir-proxy",
363-
"redirect_document_id": true
364-
},
365360
{
366361
"source_path_from_root": "/articles/healthcare-apis/data-transformation/de-identified-export.md",
367362
"redirect_url": "/azure/healthcare-apis/fhir/de-identified-export",

articles/active-directory-b2c/configure-authentication-sample-web-app.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -75,6 +75,7 @@ To create the web app registration, use the following steps:
7575
1. Under **Name**, enter a name for the application (for example, *webapp1*).
7676
1. Under **Supported account types**, select **Accounts in any identity provider or organizational directory (for authenticating users with user flows)**.
7777
1. Under **Redirect URI**, select **Web** and then, in the URL box, enter `https://localhost:44316/signin-oidc`.
78+
1. Under **Implicit grant and hybrid flows**, select the **ID tokens (used for implicit and hybrid flows)** checkbox.
7879
1. Under **Permissions**, select the **Grant admin consent to openid and offline access permissions** checkbox.
7980
1. Select **Register**.
8081
1. Select **Overview**.

articles/active-directory/authentication/how-to-mfa-number-match.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ ms.collection: M365-identity-device-management
1616
This topic covers how to enable number matching in Microsoft Authenticator push notifications to improve user sign-in security.
1717

1818
>[!NOTE]
19-
>Number matching is a key security upgrade to traditional second factor notifications in Microsoft Authenticator that will begin to be enabled by default for all users starting February 27, 2023.<br>
19+
>Number matching is a key security upgrade to traditional second factor notifications in Microsoft Authenticator. We will remove the admin controls and enforce the number match experience tenant-wide for all users starting February 27, 2023.<br>
2020
>We highly recommend enabling number matching in the near term for improved sign-in security.
2121
2222
## Prerequisites

articles/active-directory/develop/console-app-quickstart.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ ms.service: active-directory
99
ms.subservice: develop
1010
ms.topic: quickstart
1111
ms.workload: identity
12-
ms.date: 12/06/2021
12+
ms.date: 12/06/2022
1313
ms.author: dmwendia
1414
ms.custom: aaddev, identityplatformtop40, devx-track-python, "scenarios:getting-started", "languages:Python", mode-other
1515
zone_pivot_groups: console-app-quickstart

articles/active-directory/develop/includes/console-app/quickstart-netcore.md

Lines changed: 30 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -8,49 +8,49 @@ ms.service: active-directory
88
ms.subservice: develop
99
ms.topic: include
1010
ms.workload: identity
11-
ms.date: 01/10/2022
11+
ms.date: 12/08/2022
1212
ms.author: jmprieur
1313
ms.reviewer: marsma
1414
ms.custom: devx-track-csharp, aaddev, identityplatformtop40, "scenarios:getting-started", "languages:aspnet-core", mode-other
1515
#Customer intent: As an application developer, I want to learn how my .NET Core app can get an access token and call an API that's protected by the Microsoft identity platform by using the client credentials flow.
1616
---
1717

18-
In this quickstart, you download and run a code sample that demonstrates how a .NET Core console application can get an access token to call the Microsoft Graph API and display a [list of users](/graph/api/user-list) in the directory. The code sample also demonstrates how a job or a Windows service can run with an application identity, instead of a user's identity. The sample console application in this quickstart is also a daemon application, so it's a confidential client application.
18+
The following quickstart uses a code sample to demonstrates how a .NET Core console application can get an access token to call the Microsoft Graph API and display a [list of users](/graph/api/user-list) in the directory. It also demonstrates how a job or a Windows service can run with an application identity, instead of a user's identity. The sample console application in this quickstart is also a daemon application, therefore it's a confidential client application.
1919

2020
The following diagram shows how the sample app works:
2121

2222
![Diagram that shows how the sample app generated by this quickstart works.](../../media/quickstart-v2-netcore-daemon/netcore-daemon-intro.svg)
2323

2424
## Prerequisites
2525

26-
This quickstart requires [.NET Core 3.1 SDK](https://dotnet.microsoft.com/download) but will also work with .NET 5.0 SDK.
27-
26+
This quickstart requires [.NET Core 6.0 SDK](https://dotnet.microsoft.com/download).
2827

2928
## Register and download the app
3029

3130

32-
You have two options to start building your application: automatic or manual configuration.
31+
The application can be built using either an automatic or manual configuration.
3332

3433
### Automatic configuration
3534

36-
If you want to register and automatically configure your app and then download the code sample, follow these steps:
35+
To register and automatically configure the app and then download the code sample, follow these steps:
3736

3837
1. Go to the [Azure portal page for app registration](https://portal.azure.com/?Microsoft_AAD_RegisteredApps=true#blade/Microsoft_AAD_RegisteredApps/applicationsListBlade/quickStartType/DotNetCoreDaemonQuickstartPage/sourceType/docs).
3938
1. Enter a name for your application and select **Register**.
4039
1. Follow the instructions to download and automatically configure your new application in one click.
4140

4241
### Manual configuration
4342

44-
If you want to manually configure your application and code sample, use the following procedures.
43+
To manually configure your application and code sample, use the following procedures.
4544

4645
#### Step 1: Register your application
47-
To register your application and add the app's registration information to your solution manually, follow these steps:
46+
47+
To register the application and add the registration information to the solution manually, follow these steps:
4848

4949
1. Sign in to the [Azure portal](https://portal.azure.com/).
50-
1. If you have access to multiple tenants, use the **Directories + subscriptions** filter :::image type="icon" source="../../media/common/portal-directory-subscription-filter.png" border="false"::: in the top menu to switch to the tenant in which you want to register the application.
50+
1. If access to multiple tenants is available, use the **Directories + subscriptions** filter :::image type="icon" source="../../media/common/portal-directory-subscription-filter.png" border="false"::: in the top menu to switch to the tenant in which to register the application.
5151
1. Search for and select **Azure Active Directory**.
5252
1. Under **Manage**, select **App registrations** > **New registration**.
53-
1. For **Name**, enter a name for your application. For example, enter **Daemon-console**. Users of your app will see this name, and you can change it later.
53+
1. For **Name**, enter a name for the application. For example, enter **Daemon-console**. Users of the app will see this name, and can be changed later.
5454
1. Select **Register** to create the application.
5555
1. Under **Manage**, select **Certificates & secrets**.
5656
1. Under **Client secrets**, select **New client secret**, enter a name, and then select **Add**. Record the secret value in a safe location for use in a later step.
@@ -63,61 +63,59 @@ To register your application and add the app's registration information to your
6363

6464
[Download the Visual Studio project](https://github.com/Azure-Samples/active-directory-dotnetcore-daemon-v2/archive/master.zip)
6565

66-
You can run the provided project in either Visual Studio or Visual Studio for Mac.
66+
This project can be run in either Visual Studio or Visual Studio for Mac and can be downloaded from the [code sample](https://github.com/Azure-Samples/active-directory-dotnetcore-daemon-v2/archive/master.zip).
6767

6868

6969
[!INCLUDE [active-directory-develop-path-length-tip](../../../../../includes/active-directory-develop-path-length-tip.md)]
7070

7171

7272
#### Step 3: Configure your Visual Studio project
7373

74-
1. Extract the .zip file to a local folder that's close to the root of the disk. For example, extract to *C:\Azure-Samples*.
74+
1. Extract the *.zip* file to a local folder that's close to the root of the disk to avoid errors caused by path length limitations on Windows. For example, extract to *C:\Azure-Samples*.
7575

76-
We recommend extracting the archive into a directory near the root of your drive to avoid errors caused by path length limitations on Windows.
7776

7877
1. Open the solution in Visual Studio: *1-Call-MSGraph\daemon-console.sln* (optional).
79-
1. In *appsettings.json*, replace the values of `Tenant`, `ClientId`, and `ClientSecret`:
78+
1. In *appsettings.json*, replace the values of `Tenant`, `ClientId`, and `ClientSecret`. The value for the application (client) ID and the directory (tenant) ID, can be found in the app's **Overview** page on the Azure portal.
8079

8180
```json
8281
"Tenant": "Enter_the_Tenant_Id_Here",
8382
"ClientId": "Enter_the_Application_Id_Here",
8483
"ClientSecret": "Enter_the_Client_Secret_Here"
8584
```
86-
In that code:
87-
- `Enter_the_Application_Id_Here` is the application (client) ID for the application that you registered.
88-
To find the values for the application (client) ID and the directory (tenant) ID, go to the app's **Overview** page in the Azure portal.
85+
86+
In the code:
87+
- `Enter_the_Application_Id_Here` is the application (client) ID for the registered application.
8988
- Replace `Enter_the_Tenant_Id_Here` with the tenant ID or tenant name (for example, `contoso.microsoft.com`).
9089
- Replace `Enter_the_Client_Secret_Here` with the client secret that you created in step 1.
9190
To generate a new key, go to the **Certificates & secrets** page.
9291

9392

9493
#### Step 4: Admin consent
9594

96-
If you try to run the application at this point, you'll receive an *HTTP 403 - Forbidden* error: "Insufficient privileges to complete the operation." This error happens because any app-only permission requires a global administrator of your directory to give consent to your application. Select one of the following options, depending on your role.
95+
Running the application now results in the output `HTTP 403 - Forbidden* error: "Insufficient privileges to complete the operation`. This error occurs because any app-only permission requires a global administrator of the directory to give consent to the application. Select one of the following options, depending on the role.
9796

9897
##### Global tenant administrator
9998

100-
If you're a global tenant administrator, go to **Enterprise applications** in the Azure portal. Select your app registration, and select **Permissions** from the **Security** section of the left pane. Then select the large button labeled **Grant admin consent for {Tenant Name}** (where **{Tenant Name}** is the name of your directory).
99+
For a global tenant administrator, go to **Enterprise applications** in the Azure portal. Select the app registration, and select **Permissions** from the **Security** section of the left pane. Then select the large button labeled **Grant admin consent for {Tenant Name}** (where **{Tenant Name}** is the name of the directory).
101100

102101

103102
##### Standard user
104103

105-
If you're a standard user of your tenant, ask a global administrator to grant admin consent for your application. To do this, give the following URL to your administrator:
104+
For a standard user of your tenant, ask a global administrator to grant admin consent to the application. To do this, provide the following URL to the administrator:
106105

107106
```url
108107
https://login.microsoftonline.com/Enter_the_Tenant_Id_Here/adminconsent?client_id=Enter_the_Application_Id_Here
109108
```
110109

111-
112-
In that URL:
110+
In the URL:
113111
* Replace `Enter_the_Tenant_Id_Here` with the tenant ID or tenant name (for example, `contoso.microsoft.com`).
114-
* `Enter_the_Application_Id_Here` is the application (client) ID for the application that you registered.
112+
* `Enter_the_Application_Id_Here` is the application (client) ID for the registered application.
115113

116-
You might see the error "AADSTS50011: No reply address is registered for the application" after you grant consent to the app by using the preceding URL. This error happens because this application and the URL don't have a redirect URI. You can ignore it.
114+
The error `AADSTS50011: No reply address is registered for the application` may be displayed after you grant consent to the app by using the preceding URL. This error occurs because the application and the URL don't have a redirect URI. This can be ignored.
117115

118116
#### Step 5: Run the application
119117

120-
If you're using Visual Studio or Visual Studio for Mac, press **F5** to run the application. Otherwise, run the application via command prompt, console, or terminal:
118+
In Visual Studio, press **F5** to run the application. Otherwise, run the application via command prompt, console, or terminal:
121119

122120
```dotnetcli
123121
cd {ProjectFolder}\1-Call-MSGraph\daemon-console
@@ -126,32 +124,33 @@ dotnet run
126124
In that code:
127125
* `{ProjectFolder}` is the folder where you extracted the .zip file. An example is `C:\Azure-Samples\active-directory-dotnetcore-daemon-v2`.
128126

129-
You should see a list of users in Azure Active Directory as result.
127+
A list of users in Azure Active Directory should be displayed as a result.
130128

131-
This quickstart application uses a client secret to identify itself as a confidential client. The client secret is added as a plain-text file to your project files. For security reasons, we recommend that you use a certificate instead of a client secret before considering the application as a production application. For more information on how to use a certificate, see [these instructions](https://github.com/Azure-Samples/active-directory-dotnetcore-daemon-v2/#variation-daemon-application-using-client-credentials-with-certificates) in the GitHub repository for this sample.
129+
This quickstart application uses a client secret to identify itself as a confidential client. The client secret is added as a plain-text file to the project files. For security reasons, we recommend to use a certificate instead of a client secret before considering the application as a production application. For more information on how to use a certificate, see [these instructions](https://github.com/Azure-Samples/active-directory-dotnetcore-daemon-v2/#variation-daemon-application-using-client-credentials-with-certificates).
132130

133131
## More information
134-
This section gives an overview of the code required to sign in users. This overview can be useful to understand how the code works, what the main arguments are, and how to add sign-in to an existing .NET Core console application.
132+
133+
This section provides an overview of the code required to sign in users. The overview can be useful to understand how the code works, what the main arguments are, and how to add sign-in to an existing .NET Core console application.
135134

136135
### MSAL.NET
137136

138137
Microsoft Authentication Library (MSAL, in the [Microsoft.Identity.Client](https://www.nuget.org/packages/Microsoft.Identity.Client) package) is the library that's used to sign in users and request tokens for accessing an API protected by the Microsoft identity platform. This quickstart requests tokens by using the application's own identity instead of delegated permissions. The authentication flow in this case is known as a [client credentials OAuth flow](../../v2-oauth2-client-creds-grant-flow.md). For more information on how to use MSAL.NET with a client credentials flow, see [this article](https://aka.ms/msal-net-client-credentials).
139138

140-
You can install MSAL.NET by running the following command in the Visual Studio Package Manager Console:
139+
MSAL.NET can be installed by running the following command in the Visual Studio Package Manager Console:
141140

142141
```dotnetcli
143142
dotnet add package Microsoft.Identity.Client
144143
```
145144

146145
### MSAL initialization
147146

148-
You can add the reference for MSAL by adding the following code:
147+
Add the reference for MSAL by adding the following code:
149148

150149
```csharp
151150
using Microsoft.Identity.Client;
152151
```
153152

154-
Then, initialize MSAL by using the following code:
153+
Then, initialize MSAL with the following:
155154

156155
```csharp
157156
IConfidentialClientApplication app;

0 commit comments

Comments
 (0)