Skip to content

Commit

Permalink
Merge pull request #1020 from MicrosoftDocs/main
Browse files Browse the repository at this point in the history
1/2/2023 AM Publish
  • Loading branch information
Taojunshen authored Jan 2, 2024
2 parents 0ddb8cb + 065d9f0 commit 8cd65fe
Show file tree
Hide file tree
Showing 20 changed files with 120 additions and 90 deletions.
22 changes: 21 additions & 1 deletion .openpublishing.redirection.json
Original file line number Diff line number Diff line change
Expand Up @@ -79,8 +79,28 @@
"source_path_from_root": "/docs/identity/authentication/concept-authentication-operator-assistance.md",
"redirect_url": "/entra/identity/authentication/concept-mfa-howitworks",
"redirect_document_id": false
},
{
"source_path_from_root": "/docs/identity-platform/web-app-tutorial-01-register-application.md",
"redirect_url": "/entra/identity-platform/tutorial-web-app-dotnet-register-app",
"redirect_document_id": false
},
{
"source_path_from_root": "/docs/identity-platform/web-app-tutorial-02-prepare-application.md",
"redirect_url": "/entra/identity-platform/tutorial-web-app-dotnet-prepare-app",
"redirect_document_id": false
},
{
"source_path_from_root": "/docs/identity-platform/web-app-tutorial-03-sign-in-users.md",
"redirect_url": "/entra/identity-platform/tutorial-web-app-dotnet-sign-in-users",
"redirect_document_id": false
},
{
"source_path_from_root": "/docs/identity-platform/web-app-tutorial-04-call-web-api.md",
"redirect_url": "/entra/identity-platform/tutorial-web-app-dotnet-call-api",
"redirect_document_id": false
}

]
}
}

8 changes: 4 additions & 4 deletions docs/global-secure-access/how-to-compliant-network.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ description: Learn how to require known compliant network locations in order to
ms.service: network-access
ms.subservice:
ms.topic: how-to
ms.date: 12/14/2023
ms.date: 01/02/2024

ms.author: joflore
author: MicrosoftGuyJFlo
Expand All @@ -14,7 +14,7 @@ ms.reviewer: mamkumar
---
# Enable compliant network check with Conditional Access

Organizations who use Conditional Access along with the Global Secure Access preview, can prevent malicious access to Microsoft apps, third-party SaaS apps, and private line-of-business (LoB) apps using multiple conditions to provide defense-in-depth. These conditions may include device compliance, location, and more to provide protection against user identity or token theft. Global Secure Access introduces the concept of a compliant network within Conditional Access and continuous access evaluation. This compliant network check ensures users connect from a verified network connectivity model for their specific tenant and are compliant with security policies enforced by administrators.
Organizations who use Conditional Access along with the Global Secure Access preview, can prevent malicious access to Microsoft apps, third-party SaaS apps, and private line-of-business (LoB) apps using multiple conditions to provide defense-in-depth. These conditions might include device compliance, location, and more to provide protection against user identity or token theft. Global Secure Access introduces the concept of a compliant network within Conditional Access and continuous access evaluation. This compliant network check ensures users connect from a verified network connectivity model for their specific tenant and are compliant with security policies enforced by administrators.

The Global Secure Access Client installed on devices or users behind configured remote networks allows administrators to secure resources behind a compliant network with advanced Conditional Access controls. This compliant network feature makes it easier for administrators to manage and maintain, without having to maintain a list of all of an organization's locations IP addresses. Administrators don't need to hairpin traffic through their organization's VPN egress points to ensure security.

Expand All @@ -26,7 +26,7 @@ This compliant network check is specific to each tenant.
- For example: Contoso can protect their services like Exchange Online and SharePoint Online behind their compliant network check to ensure only Contoso users can access these resources.
- If another organization like Fabrikam was using a compliant network check, they wouldn't pass Contoso's compliant network check.

The compliant network is different than [IPv4, IPv6, or geographic locations](../identity/conditional-access/location-condition.md) you may configure in Microsoft Entra ID. No administrator upkeep is required.
The compliant network is different than [IPv4, IPv6, or geographic locations](../identity/conditional-access/location-condition.md) you might configure in Microsoft Entra ID. No administrator upkeep is required.

## Prerequisites

Expand Down Expand Up @@ -71,7 +71,7 @@ The following example shows this type of policy. In addition, you can enforce to
1. Under **Exclude**, select **Users and groups** and choose your organization's [emergency access or break-glass accounts](#user-exclusions).
1. Under **Target resources** > **Include**, and select **Select apps**.
1. Choose **Office 365 Exchange Online**, and/or **Office 365 SharePoint Online**, and/or any of your third-party SaaS apps.
1. The specific *Office 365* cloud app in the app picker is currently NOT supported, so do not select this cloud app.
1. The specific *Office 365* cloud app in the app picker is currently NOT supported, so don't select this cloud app.
1. Under **Conditions** > **Location**.
1. Set **Configure** to **Yes**
1. Under **Include**, select **Any location**.
Expand Down
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
16 changes: 8 additions & 8 deletions docs/identity-platform/TOC.yml
Original file line number Diff line number Diff line change
Expand Up @@ -190,14 +190,14 @@
items:
- name: ASP.NET
items:
- name: 1 - Register your app
href: web-app-tutorial-01-register-application.md
- name: 2 - Prepare your app
href: web-app-tutorial-02-prepare-application.md
- name: 3 - Sign in users
href: web-app-tutorial-03-sign-in-users.md
- name: 4 - Get user data from web API
href: web-app-tutorial-04-call-web-api.md
- name: Register your app
href: tutorial-web-app-dotnet-register-app.md
- name: Prepare your app
href: tutorial-web-app-dotnet-prepare-app.md
- name: Sign in users
href: tutorial-web-app-dotnet-sign-in-users.md
- name: Get user data from web API
href: tutorial-web-app-dotnet-call-api.md
- name: Node.js
href: tutorial-v2-nodejs-webapp-msal.md
- name: Spring
Expand Down
2 changes: 1 addition & 1 deletion docs/identity-platform/index-web-app.yml
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ landingContent:
- linkListType: tutorial
links:
- text: ASP.NET
url: ./web-app-tutorial-01-register-application.md
url: tutorial-web-app-dotnet-register-app.md
- text: Blazor Server
url: tutorial-blazor-server.md
- text: Node.js with Express
Expand Down
2 changes: 1 addition & 1 deletion docs/identity-platform/quickstart-v2-aspnet-webapp.md
Original file line number Diff line number Diff line change
Expand Up @@ -160,4 +160,4 @@ ms.topic: conceptual
> For a complete step-by-step guide on building applications and new features, including a full explanation of this quickstart, try out the ASP.NET tutorial.
>
> > [!div class="nextstepaction"]
> > [Add sign-in to an ASP.NET web app](./web-app-tutorial-01-register-application.md)
> > [Add sign-in to an ASP.NET web app](tutorial-web-app-dotnet-register-app.md)
16 changes: 9 additions & 7 deletions docs/identity-platform/quickstart-web-app-aspnet-core-sign-in.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,6 @@ ms.topic: quickstart

# Quickstart: Sign in users and call the Microsoft Graph API from an ASP.NET Core web app


This quickstart uses a sample ASP.NET Core web app to show you how to sign in users by using the [authorization code flow](./v2-oauth2-auth-code-flow.md) and call the Microsoft Graph API. The sample uses [Microsoft Authentication Library for .NET](/entra/msal/dotnet/) and [Microsoft Identity Web](/entra/msal/dotnet/microsoft-identity-web/) for ASP.NET to handle authentication.

In this article you register a web application in the Microsoft Entra admin center, and download a sample ASP.NET web application. You'll run the sample application, sign in with your personal Microsoft account or a work or school account, and sign out.
Expand Down Expand Up @@ -47,12 +46,14 @@ In this article you register a web application in the Microsoft Entra admin cent
## Clone or download the sample application

To obtain the sample application, you can either clone it from GitHub or download it as a *.zip* file.
- To clone the sample, open a command prompt and navigate to where you wish to create the project, and enter the following command:


* To clone the sample, open a command prompt and navigate to where you wish to create the project, and enter the following command:

```console
git clone https://github.com/Azure-Samples/ms-identity-docs-code-dotnet.git
```
- [Download the .zip file](https://github.com/Azure-Samples/ms-identity-docs-code-dotnet/archive/refs/heads/main.zip). Extract it to a file path where the length of the name is fewer than 260 characters.

* [Download the .zip file](https://github.com/Azure-Samples/ms-identity-docs-code-dotnet/archive/refs/heads/main.zip). Extract it to a file path where the length of the name is fewer than 260 characters.

## Create and upload a self-signed certificate

Expand Down Expand Up @@ -100,9 +101,10 @@ To obtain the sample application, you can either clone it from GitHub or downloa
1. Find the **Sign out** link in the top right corner of the page, and select it.
1. You'll be prompted to pick an account to sign out from. Select the account you used to sign in.
1. A message appears indicating that you have signed out.
1. Although you have signed out, the application is still running from your terminal. To stop the application in your terminal, press **Ctrl+C**.
1. Although you have signed out, the application is still running from your terminal. To stop the application in your terminal, press **Ctrl+C**.

## Related content

- [Quickstart: Protect an ASP.NET Core web API with the Microsoft identity platform](./quickstart-web-api-aspnet-core-protect-api.md).
- Create an ASP.NET web app from scratch with the series [Tutorial: Register an application with the Microsoft identity platform](./web-app-tutorial-01-register-application.md).
* [Quickstart: Protect an ASP.NET Core web API with the Microsoft identity platform](./quickstart-web-api-aspnet-core-protect-api.md).

* Create an ASP.NET web app from scratch with the series [Tutorial: Register an application with the Microsoft identity platform](tutorial-web-app-dotnet-register-app.md).
Original file line number Diff line number Diff line change
Expand Up @@ -184,4 +184,4 @@ You can call Microsoft Graph from the controller by getting the instance of Grap
For a complete step-by-step guide on building applications and new features, including a full explanation of this quickstart, try out the ASP.NET tutorial.

> [!div class="nextstepaction"]
> [Add sign-in to an ASP.NET web app](./web-app-tutorial-01-register-application.md)
> [Add sign-in to an ASP.NET web app](tutorial-web-app-dotnet-register-app.md)
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ description: Call an API and display the results.
author: cilwerner
manager: CelesteDG
ms.author: cwerner
ms.date: 02/09/2023
ms.date: 01/02/2024
ms.service: active-directory
ms.subservice: develop
ms.topic: tutorial
Expand All @@ -18,29 +18,32 @@ The application can now be configured to call an API. For the purposes of this t
In this tutorial:

> [!div class="checklist"]
>
> * Call the API and display the results
> * Test the application
## Prerequisites

* Completion of the prerequisites and steps in [Tutorial: Add sign in to an application](web-app-tutorial-03-sign-in-users.md).
* Completion of the prerequisites and steps in [Tutorial: Add sign in to an application](tutorial-web-app-dotnet-sign-in-users.md).

## Call the API and display the results

1. Under **Pages**, open the *Index.cshtml.cs* file and replace the entire contents of the file with the following snippet. Check that the project `namespace` matches your project name.

:::code language="csharp" source="~/../ms-identity-docs-code-dotnet/web-app-aspnet/Pages/Index.cshtml.cs" :::
:::code language="csharp" source="~/../ms-identity-docs-code-dotnet/web-app-aspnet/Pages/Index.cshtml.cs":::

1. Open *Index.cshtml* and add the following code to the bottom of the file. This will handle how the information received from the API is displayed:

:::code language="csharp" source="~/../ms-identity-docs-code-dotnet/web-app-aspnet/Pages/Index.cshtml" range="13-17" :::
:::code language="csharp" source="~/../ms-identity-docs-code-dotnet/web-app-aspnet/Pages/Index.cshtml" range="13-17":::

## Test the application

### [Visual Studio](#tab/visual-studio)
1. Start the application by selecting **Start without debugging**.

Start the application by selecting **Start without debugging**.

### [Visual Studio Code](#tab/visual-studio-code)

1. Start the application by typing the following in the terminal:

#### [.NET 6.0](#tab/dotnet6)
Expand All @@ -56,18 +59,19 @@ In this tutorial:
```

### [Visual Studio for Mac](#tab/visual-studio-for-mac)
1. Start the application by selecting the **Play** icon.

Start the application by selecting the **Play** icon.

---

2. Depending on your IDE, you may need to enter the application URI into the browser, for example `https://localhost:7100`. After the sign in window appears, select the account in which to sign in with. Ensure the account matches the criteria of the app registration.
1. Depending on your IDE, you may need to enter the application URI into the browser, for example `https://localhost:7100`. After the sign in window appears, select the account in which to sign in with. Ensure the account matches the criteria of the app registration.

:::image type="content" source="./media/web-app-tutorial-04-call-web-api/pick-account.png" alt-text="Screenshot depicting account options to sign in.":::

1. Upon selecting the account, a second window appears indicating that a code will be sent to your email address. Select **Send code**, and check your email inbox.

:::image type="content" source="./media/web-app-tutorial-04-call-web-api/sign-in-send-code.png" alt-text="Screenshot depicting a screen to send a code to the user's email.":::

1. Open the email from the sender **Microsoft account team**, and enter the 7-digit *single-use code*. Once entered, select **Sign in**.

:::image type="content" source="./media/web-app-tutorial-04-call-web-api/enter-code.png" alt-text="Screenshot depicting the single-use code sign in procedure.":::
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ description: Prepare an ASP.NET Core application for authentication using Visual
author: cilwerner
manager: CelesteDG
ms.author: cwerner
ms.date: 02/09/2023
ms.date: 01/02/2024
ms.service: active-directory
ms.subservice: develop
ms.topic: tutorial
Expand All @@ -18,18 +18,19 @@ After registration is complete, an ASP.NET web application can be created using
In this tutorial:

> [!div class="checklist"]
>
> * Create an **ASP.NET Core Web App**
> * Create a self-signed certificate
> * Configure the settings for the application
> * Define platform settings and URLs
## Prerequisites

* Completion of the prerequisites and steps in [Tutorial: Register an application with the Microsoft identity platform](web-app-tutorial-01-register-application.md).
* Completion of the prerequisites and steps in [Tutorial: Register an application with the Microsoft identity platform](tutorial-web-app-dotnet-register-app.md).
* You can download an IDE used in this tutorial [here](https://visualstudio.microsoft.com/downloads).
- Visual Studio 2022
- Visual Studio Code
- Visual Studio 2022 for Mac
* Visual Studio 2022
* Visual Studio Code
* Visual Studio 2022 for Mac
* A minimum requirement of [.NET Core 6.0 SDK](https://dotnet.microsoft.com/download/dotnet).

## Create an ASP.NET Core project
Expand Down Expand Up @@ -99,6 +100,7 @@ The use of certificates is a suggested way of securing communication between cli
```powershell
dotnet dev-certs https -ep ./certificate.crt --trust
```

---

### Upload certificate to the portal
Expand All @@ -122,7 +124,7 @@ The values recorded earlier will be used in *appsettings.json* to configure the

1. In your IDE, open *appsettings.json* and replace the file contents with the following snippet:

:::code language="json" source="~/../ms-identity-docs-code-dotnet/web-app-aspnet/appsettings.json" :::
:::code language="json" source="~/../ms-identity-docs-code-dotnet/web-app-aspnet/appsettings.json":::

* `Instance` - The authentication endpoint. Check with the different available endpoints in [National clouds](authentication-national-cloud.md#azure-ad-authentication-endpoints).
* `TenantId` - The identifier of the tenant where the application is registered. Replace the text in quotes with the **Directory (tenant) ID** value that was recorded earlier from the overview page of the registered application.
Expand All @@ -149,4 +151,4 @@ The values recorded earlier will be used in *appsettings.json* to configure the
## Next steps

> [!div class="nextstepaction"]
> [Tutorial: Add sign-in to an application](web-app-tutorial-03-sign-in-users.md)
> [Tutorial: Add sign-in to an application](tutorial-web-app-dotnet-sign-in-users.md)
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ description: In this tutorial, you learn how to register a web application with
author: cilwerner
manager: CelesteDG
ms.author: cwerner
ms.date: 02/09/2023
ms.date: 01/02/2024
ms.service: active-directory
ms.subservice: develop
ms.topic: tutorial
Expand All @@ -13,18 +13,19 @@ ms.topic: tutorial

# Tutorial: Register an application with the Microsoft identity platform

To interact with the Microsoft identity platform, Microsoft Entra ID must be made aware of the application you create. This tutorial shows you how to register an application in a tenant on the Azure portal.
To interact with the Microsoft identity platform, Microsoft Entra ID must be made aware of the application you create. This tutorial shows you how to register a web application in a tenant on the Microsoft Entra admin center.

In this tutorial:

> [!div class="checklist"]
> * Register a web application in a tenant
> * Record the web application's unique identifiers
>
> * Register the application in a tenant
> * Record the application's unique identifiers
## Prerequisites

* An Azure account with an active subscription. [Create an account for free](https://azure.microsoft.com/free/).
* This Azure account must have permissions to manage applications. Use any of the following roles needed to register the application:
* This Azure account must have permissions to manage applications. Any of the following Microsoft Entra roles include the required permissions:
* Application administrator
* Application developer
* Cloud application administrator
Expand All @@ -35,13 +36,13 @@ In this tutorial:

To complete registration, provide the application a name and specify the supported account types. Once registered, the application **Overview** page will display the identifiers needed in the application source code.

1. Sign in to the [Microsoft Entra admin center](https://entra.microsoft.com) as at least an [Application Developer](~/identity/role-based-access-control/permissions-reference.md#application-developer).
1. Sign in to the [Microsoft Entra admin center](https://entra.microsoft.com) as at least an [Application Developer](~/identity/role-based-access-control/permissions-reference.md#application-developer).
1. If you have access to multiple tenants, use the **Settings** icon :::image type="icon" source="media/common/admin-center-settings-icon.png" border="false"::: in the top menu to switch to the tenant in which you want to register the application from the **Directories + subscriptions** menu.
1. Browse to **Identity** > **Applications** > **Application registrations**.
1. Select **New registration**.
1. Enter a **Name** for the application, such as *NewWebApp1*.
1. For Supported account types, select **Accounts in this organizational directory only**. For information on different account types, select the **Help me choose** option.
- The **Redirect URI (optional)** will be configured at a later stage.
* The **Redirect URI (optional)** will be configured at a later stage.
1. Select **Register**.

:::image type="content" source="./media/web-app-tutorial-01-register-application/register-application.png" alt-text="Screenshot of process to enter a name and select the account type.":::
Expand All @@ -56,4 +57,4 @@ To complete registration, provide the application a name and specify the support
## Next steps

> [!div class="nextstepaction"]
> [Tutorial: Prepare a web application for authentication](web-app-tutorial-02-prepare-application.md)
> [Tutorial: Prepare a web application for authentication](tutorial-web-app-dotnet-prepare-app.md)
Loading

0 comments on commit 8cd65fe

Please sign in to comment.