Skip to content

Commit 7796d71

Browse files
authored
Merge pull request #234883 from MicrosoftDocs/repo_sync_working_branch
Confirm merge from repo_sync_working_branch to main to sync with https://github.com/MicrosoftDocs/azure-docs (branch main)
2 parents 3f43c53 + 6f2f419 commit 7796d71

File tree

4 files changed

+48
-35
lines changed

4 files changed

+48
-35
lines changed

articles/azure-maps/how-to-secure-device-code.md

Lines changed: 27 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
---
2-
title: How to secure input constrained device with Azure AD and Azure Maps REST APIs
2+
title: How to secure an input constrained device using Azure AD and Azure Maps REST API
33
titleSuffix: Azure Maps
4-
description: How to configure a browser-less application which supports sign-in to Azure AD and calls Azure Maps REST APIs.
4+
description: How to configure a browser-less application that supports sign-in to Azure AD and calls Azure Maps REST API.
55
author: eriklindeman
66
ms.author: eriklind
77
ms.date: 06/12/2020
@@ -10,52 +10,48 @@ ms.service: azure-maps
1010
services: azure-maps
1111
---
1212

13-
# Secure an input constrained device with Azure AD and Azure Maps REST APIs
13+
# Secure an input constrained device by using Azure Active Directory (Azure AD) and Azure Maps REST APIs
1414

15-
This guide discusses how to secure public applications or devices that cannot securely store secrets or accept browser input. These types of applications fall under the category of IoT or internet of things. Some examples of these applications may include: Smart TV devices or sensor data emitting applications.
15+
This guide discusses how to secure public applications or devices that can't securely store secrets or accept browser input. These types of applications fall under the internet of things (IoT) category. Examples include Smart TVs and sensor data emitting applications.
1616

1717
[!INCLUDE [authentication details](./includes/view-authentication-details.md)]
1818

1919
## Create an application registration in Azure AD
2020

2121
> [!NOTE]
22-
> * **Prerequisite Reading:** [Scenario: Desktop app that calls web APIs](../active-directory/develop/scenario-desktop-overview.md)
22+
>
23+
> * **Prerequisite Reading:** [Scenario: Desktop app that calls web APIs]
2324
> * The following scenario uses the device code flow, which does not involve a web browser to acquire a token.
2425
25-
Create the device based application in Azure AD to enable Azure AD sign in. This application will be granted access to Azure Maps REST APIs.
26+
Create the device based application in Azure AD to enable Azure AD sign in, which is granted access to Azure Maps REST APIs.
2627

2728
1. In the Azure portal, in the list of Azure services, select **Azure Active Directory** > **App registrations** > **New registration**.
2829

29-
> [!div class="mx-imgBorder"]
30-
> ![App registration](./media/how-to-manage-authentication/app-registration.png)
30+
:::image type="content" source="./media/how-to-manage-authentication/app-registration.png" alt-text="A screenshot showing application registration in Azure AD":::
3131

32-
2. Enter a **Name**, choose **Accounts in this organizational directory only** as the **Supported account type**. In **Redirect URIs**, specify **Public client / native (mobile & desktop)** then add `https://login.microsoftonline.com/common/oauth2/nativeclient` to the value. For more details please see Azure AD [Desktop app that calls web APIs: App registration](../active-directory/develop/scenario-desktop-app-registration.md). Then **Register** the application.
32+
2. Enter a **Name**, choose **Accounts in this organizational directory only** as the **Supported account type**. In **Redirect URIs**, specify **Public client / native (mobile & desktop)** then add `https://login.microsoftonline.com/common/oauth2/nativeclient` to the value. For more information, see Azure AD [Desktop app that calls web APIs: App registration]. Then **Register** the application.
3333

34-
> [!div class="mx-imgBorder"]
35-
> ![Add app registration details for name and redirect uri](./media/azure-maps-authentication/devicecode-app-registration.png)
34+
:::image type="content" source="./media/azure-maps-authentication/devicecode-app-registration.png" alt-text="A screenshot showing the settings used to register an application.":::
3635

37-
3. Navigate to **Authentication** and enable **Treat application as a public client**. This will enable device code authentication with Azure AD.
36+
3. Navigate to **Authentication** and enable **Treat application as a public client** to enable device code authentication with Azure AD.
3837

39-
> [!div class="mx-imgBorder"]
40-
> ![Enable app registration as public client](./media/azure-maps-authentication/devicecode-public-client.png)
38+
:::image type="content" source="./media/azure-maps-authentication/devicecode-public-client.png" alt-text="A screenshot showing the advanced settings used to specify treating the application as a public client.":::
4139

4240
4. To assign delegated API permissions to Azure Maps, go to the application. Then select **API permissions** > **Add a permission**. Under **APIs my organization uses**, search for and select **Azure Maps**.
4341

44-
> [!div class="mx-imgBorder"]
45-
> ![Add app API permissions](./media/how-to-manage-authentication/app-permissions.png)
42+
:::image type="content" source="./media/how-to-manage-authentication/app-permissions.png" alt-text="A screenshot showing where you request API permissions.":::
4643

4744
5. Select the check box next to **Access Azure Maps**, and then select **Add permissions**.
4845

49-
> [!div class="mx-imgBorder"]
50-
> ![Select app API permissions](./media/how-to-manage-authentication/select-app-permissions.png)
46+
:::image type="content" source="./media/how-to-manage-authentication/select-app-permissions.png" alt-text="A screenshot showing where you specify the app permissions you require.":::
5147

52-
6. Configure Azure role-based access control (Azure RBAC) for users or groups. See [Grant role-based access for users to Azure Maps](#grant-role-based-access-for-users-to-azure-maps).
48+
6. Configure Azure role-based access control (Azure RBAC) for users or groups. For more information, see [Grant role-based access for users to Azure Maps].
5349

54-
7. Add code for acquiring token flow in the application, for implementation details see [Device code flow](../active-directory/develop/scenario-desktop-acquire-token-device-code-flow.md). When acquiring tokens, reference the scope: `user_impersonation` which was selected on earlier steps.
50+
7. Add code for acquiring token flow in the application, for implementation details see [Device code flow]. When acquiring tokens, reference the scope: `user_impersonation` that was selected on earlier steps.
5551

5652
> [!Tip]
5753
> Use Microsoft Authentication Library (MSAL) to acquire access tokens.
58-
> See recommendations on [Desktop app that calls web APIs: Code configuration](../active-directory/develop/scenario-desktop-app-configuration.md)
54+
> For more information, see [Desktop app that calls web APIs: Code configuration] in the active directory documentation.
5955
6056
8. Compose the HTTP request with the acquired token from Azure AD, and sent request with a valid HTTP client.
6157

@@ -70,7 +66,7 @@ x-ms-client-id: 30d7cc….9f55
7066
Authorization: Bearer eyJ0e….HNIVN
7167
```
7268

73-
The sample request body below is in GeoJSON:
69+
The following sample request body is in GeoJSON:
7470

7571
```json
7672
{
@@ -96,11 +92,18 @@ Operation-Location: https://us.atlas.microsoft.com/mapData/operations/{udid}?api
9692
Access-Control-Expose-Headers: Operation-Location
9793
```
9894

99-
10095
[!INCLUDE [grant role-based access to users](./includes/grant-rbac-users.md)]
10196

10297
## Next steps
10398

10499
Find the API usage metrics for your Azure Maps account:
100+
105101
> [!div class="nextstepaction"]
106-
> [View usage metrics](how-to-view-api-usage.md)
102+
> [View usage metrics]
103+
104+
[Desktop app that calls web APIs: App registration]: ../active-directory/develop/scenario-desktop-app-registration.md
105+
[Desktop app that calls web APIs: Code configuration]: ../active-directory/develop/scenario-desktop-app-configuration.md
106+
[Device code flow]: ../active-directory/develop/scenario-desktop-acquire-token-device-code-flow.md
107+
[Grant role-based access for users to Azure Maps]: #grant-role-based-access-for-users-to-azure-maps
108+
[Scenario: Desktop app that calls web APIs]: ../active-directory/develop/scenario-desktop-overview.md
109+
[View usage metrics]: how-to-view-api-usage.md

articles/azure-maps/how-to-secure-spa-app.md

Lines changed: 16 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -13,28 +13,28 @@ ms.custom: devx-track-js, subject-rbac-steps
1313

1414
# How to secure a single-page web application with non-interactive sign-in
1515

16-
This article describes how to secure a single-page web application with Azure Active Directory (Azure AD), when the user isn't able to sign in to Azure AD.
16+
Secure a single-page web application with Azure Active Directory (Azure AD), even when the user isn't able to sign in to Azure AD.
1717

18-
To create this non-interactive authentication flow, we'll create an Azure Function secure web service that's responsible for acquiring access tokens from Azure AD. This web service will be exclusively available only to your single-page web application.
18+
To create this non-interactive authentication flow, first create an Azure Function secure web service that's responsible for acquiring access tokens from Azure AD. This web service is exclusively available only to your single-page web application.
1919

2020
[!INCLUDE [authentication details](./includes/view-authentication-details.md)]
2121

22-
> [!Tip]
22+
> [!TIP]
2323
> Azure Maps can support access tokens from user sign-on or interactive flows. You can use interactive flows for a more restricted scope of access revocation and secret management.
2424
2525
## Create an Azure function
2626

2727
To create a secured web service application that's responsible for authentication to Azure AD:
2828

29-
1. Create a function in the Azure portal. For more information, see [Getting started with Azure Functions](../azure-functions/functions-get-started.md).
29+
1. Create a function in the Azure portal. For more information, see [Getting started with Azure Functions].
3030

31-
2. Configure CORS policy on the Azure function to be accessible by the single-page web application. The CORS policy secures browser clients to the allowed origins of your web application. For more information, see [Add CORS functionality](../app-service/app-service-web-tutorial-rest-api.md#add-cors-functionality).
31+
2. Configure CORS policy on the Azure function to be accessible by the single-page web application. The CORS policy secures browser clients to the allowed origins of your web application. For more information, see [Add CORS functionality].
3232

33-
3. [Add a system-assigned identity](../app-service/overview-managed-identity.md?tabs=dotnet#add-a-system-assigned-identity) on the Azure function to enable creation of a service principal to authenticate to Azure AD.
33+
3. [Add a system-assigned identity] on the Azure function to enable creation of a service principal to authenticate to Azure AD.
3434

35-
4. Grant role-based access for the system-assigned identity to the Azure Maps account. For details, see [Grant role-based access](#grant-role-based-access-for-users-to-azure-maps).
35+
4. Grant role-based access for the system-assigned identity to the Azure Maps account. For more information, see [Grant role-based access].
3636

37-
5. Write code for the Azure function to obtain Azure Maps access tokens using system-assigned identity with one of the supported mechanisms or the REST protocol. For more information, see [Obtain tokens for Azure resources](../app-service/overview-managed-identity.md?tabs=dotnet#add-a-system-assigned-identity)
37+
5. Write code for the Azure function to obtain Azure Maps access tokens using system-assigned identity with one of the supported mechanisms or the REST protocol. For more information, see [Obtain tokens for Azure resources].
3838

3939
Here's an example REST protocol:
4040

@@ -60,7 +60,7 @@ To create a secured web service application that's responsible for authenticatio
6060
6161
6. Configure security for the Azure function HttpTrigger:
6262
63-
1. [Create a function access key](../azure-functions/functions-bindings-http-webhook-trigger.md?tabs=csharp#authorization-keys)
63+
1. [Create a function access key]
6464
1. [Secure HTTP endpoint](../azure-functions/functions-bindings-http-webhook-trigger.md?tabs=csharp#secure-an-http-endpoint-in-production) for the Azure function in production.
6565
6666
7. Configure a web application Azure Maps Web SDK.
@@ -111,3 +111,10 @@ Find the API usage metrics for your Azure Maps account:
111111
Explore other samples that show how to integrate Azure AD with Azure Maps:
112112
> [!div class="nextstepaction"]
113113
> [Azure Maps Samples](https://github.com/Azure-Samples/Azure-Maps-AzureAD-Samples/tree/master/src/ClientGrant)
114+
115+
[Getting started with Azure Functions]: ../azure-functions/functions-get-started.md
116+
[Add CORS functionality]: ../app-service/app-service-web-tutorial-rest-api.md#add-cors-functionality
117+
[Add a system-assigned identity]: ../app-service/overview-managed-identity.md?tabs=dotnet#add-a-system-assigned-identity
118+
[Grant role-based access]: #grant-role-based-access-for-users-to-azure-maps
119+
[Obtain tokens for Azure resources]: ../app-service/overview-managed-identity.md?tabs=dotnet#add-a-system-assigned-identity
120+
[Create a function access key]: ../azure-functions/functions-bindings-http-webhook-trigger.md?tabs=csharp#authorization-keys

articles/event-hubs/event-hubs-go-get-started-send.md

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -142,8 +142,11 @@ import (
142142

143143
func main() {
144144

145+
// create a container client using a connection string and container name
146+
checkClient, err := container.NewClientFromConnectionString("AZURE STORAGE CONNECTION STRING", "CONTAINER NAME", nil)
147+
145148
// create a checkpoint store that will be used by the event hub
146-
checkpointStore, err := checkpoints.NewBlobStoreFromConnectionString("AZURE STORAGE CONNECTION STRING", "BLOB CONTAINER NAME", nil)
149+
checkpointStore, err := checkpoints.NewBlobStore(checkClient, nil)
147150

148151
if err != nil {
149152
panic(err)

articles/virtual-machines/managed-disks-overview.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -96,7 +96,7 @@ This disk has a maximum capacity of 4,095 GiB, however, many operating systems a
9696

9797
### Temporary disk
9898

99-
Most VMs contain a temporary disk, which is not a managed disk. The temporary disk provides short-term storage for applications and processes, and is intended to only store data such as page or swap files. Data on the temporary disk may be lost during a [maintenance event](./understand-vm-reboots.md) or when you [redeploy a VM](/troubleshoot/azure/virtual-machines/redeploy-to-new-node-windows?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json). During a successful standard reboot of the VM, data on the temporary disk will persist. For more information about VMs without temporary disks, see [Azure VM sizes with no local temporary disk](azure-vms-no-temp-disk.yml).
99+
Most VMs contain a temporary disk, which is not a managed disk. The temporary disk provides short-term storage for applications and processes, and is intended to only store data such as page files, swap files, or SQL Server tempdb. Data on the temporary disk may be lost during a [maintenance event](./understand-vm-reboots.md) or when you [redeploy a VM](/troubleshoot/azure/virtual-machines/redeploy-to-new-node-windows?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json). During a successful standard reboot of the VM, data on the temporary disk will persist. For more information about VMs without temporary disks, see [Azure VM sizes with no local temporary disk](azure-vms-no-temp-disk.yml).
100100

101101
On Azure Linux VMs, the temporary disk is typically /dev/sdb and on Windows VMs the temporary disk is D: by default. The temporary disk is not encrypted unless (for server side encryption) you enable encryption at host or (for Azure Disk Encryption) with the [VolumeType parameter set to All on Windows](./windows/disk-encryption-windows.md#enable-encryption-on-a-newly-added-data-disk) or [EncryptFormatAll on Linux](./linux/disk-encryption-linux.md#use-encryptformatall-feature-for-data-disks-on-linux-vms).
102102

0 commit comments

Comments
 (0)