Skip to content

Commit 70fc13c

Browse files
authored
consolidate auth/auth articles
1 parent 72af237 commit 70fc13c

7 files changed

+130
-637
lines changed

articles/iot-hub/.openpublishing.redirection.iot-hub.json

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1350,32 +1350,32 @@
13501350
},
13511351
{
13521352
"source_path_from_root": "/articles/iot-hub/iot-hub-x509-certificate-concepts.md",
1353-
"redirect_url": "/azure/iot-hub/authenticate-x509",
1353+
"redirect_url": "/azure/iot-hub/authenticate-authorize-x509",
13541354
"redirect_document_id": true
13551355
},
13561356
{
13571357
"source_path_from_root": "/articles/iot-hub/iot-hub-x509ca-overview.md",
1358-
"redirect_url": "/azure/iot-hub/authenticate-x509",
1358+
"redirect_url": "/azure/iot-hub/authenticate-authorize-x509",
13591359
"redirect_document_id": false
13601360
},
13611361
{
13621362
"source_path_from_root": "/articles/iot-hub/iot-hub-x509ca-concept.md",
1363-
"redirect_url": "/azure/iot-hub/authenticate-x509",
1363+
"redirect_url": "/azure/iot-hub/authenticate-authorize-x509",
13641364
"redirect_document_id": false
13651365
},
13661366
{
13671367
"source_path_from_root": "/articles/iot-hub/iot-hub-dev-guide-azure-ad-rbac.md",
1368-
"redirect_url": "/azure/iot-hub/authenticate-azure-ad",
1368+
"redirect_url": "/azure/iot-hub/authenticate-authorize-azure-ad",
13691369
"redirect_document_id": true
13701370
},
13711371
{
13721372
"source_path_from_root": "/articles/iot-hub/iot-hub-dev-guide-sas.md",
1373-
"redirect_url": "/azure/iot-hub/authenticate-sas",
1373+
"redirect_url": "/azure/iot-hub/authenticate-authorize-sas",
13741374
"redirect_document_id": true
13751375
},
13761376
{
13771377
"source_path_from_root": "/articles/iot-hub/iot-hub-devguide-security.md",
1378-
"redirect_url": "/azure/iot-hub/authenticate-overview",
1378+
"redirect_url": "/azure/iot-hub/authenticate-authorize-azure-ad",
13791379
"redirect_document_id": false
13801380
},
13811381
{

articles/iot-hub/TOC.yml

Lines changed: 10 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -161,17 +161,17 @@
161161
- name: High availability and disaster recovery
162162
displayName: HA, DR, availability zone, failover, failback
163163
href: iot-hub-ha-dr.md
164-
- name: Control access to IoT Hub
164+
- name: Authentication and authorization
165165
items:
166-
- name: Overview
167-
displayName: access control, permissions, Azure Active Directory, Azure AD, identity registry
168-
href: iot-hub-devguide-security.md
169-
- name: Control access with Azure AD
170-
displayName: Active Directory, permissions, security principal, RBAC
171-
href: iot-hub-dev-guide-azure-ad-rbac.md
172-
- name: Control access with SAS
173-
displayName: Shared Access Signatures, permissions, MQTT, AMQP, HTTPS, SASL PLAIN
174-
href: iot-hub-dev-guide-sas.md
166+
- name: Azure Active Directory
167+
displayName: authenticate, authentication, auth, authn, authz
168+
href: authenticate-authorize-azure-ad.md
169+
- name: Shared access signatures
170+
displayName: authenticate, authentication, auth, authn, authz
171+
href: authenticate-authorize-sas.md
172+
- name: X.509 certificates
173+
displayName: authenticate, authentication, auth, authn, authz
174+
href: authenticate-authorize-x509.md
175175
- name: IoT Hub SDKs
176176
items:
177177
- name: SDK overview
@@ -191,25 +191,6 @@
191191
href: ../iot-edge/iot-edge-as-gateway.md
192192
- name: Security
193193
items:
194-
- name: Authentication
195-
items:
196-
- name: Azure Active Directory
197-
displayName: authenticate, authentication, auth, authn
198-
href: authenticate-azure-ad.md
199-
- name: Shared access signatures
200-
displayName: authenticate, authentication, auth, authn
201-
href: authenticate-sas.md
202-
- name: X.509 certificates
203-
displayName: authenticate, authentication, auth, authn
204-
href: authenticate-x509.md
205-
- name: Authorization
206-
items:
207-
- name: Azure Active Directory
208-
displayName: authorization, authorize, auth, authz
209-
href: authorize-azure-ad.md
210-
- name: Shared access signatures
211-
displayName: authorization, authorize, auth, authz
212-
href: authorize-sas.md
213194
- name: TLS support
214195
displayName: security, Transport Layer Security
215196
href: iot-hub-tls-support.md

articles/iot-hub/authorize-azure-ad.md renamed to articles/iot-hub/authenticate-authorize-azure-ad.md

Lines changed: 6 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,10 @@
11
---
2-
title: Authorize access with Azure Active Directory
2+
title: Control access with Azure Active Directory
33
titleSuffix: Azure IoT Hub
4-
description: Understand how Azure IoT Hub uses Azure Active Directory to authorize access to IoT hubs and devices.
4+
description: Understand how Azure IoT Hub uses Azure Active Directory to authenticate identities and authorize access to IoT hubs and devices.
55
author: kgremban
66
ms.service: iot-hub
7+
services: iot-hub
78
ms.author: kgremban
89
ms.topic: conceptual
910
ms.date: 09/01/2023
@@ -12,25 +13,17 @@ ms.custom: ['Role: Cloud Development', 'Role: IoT Device', 'Role: System Archite
1213

1314
# Control access to IoT Hub by using Azure Active Directory
1415

15-
1616
You can use Azure Active Directory (Azure AD) to authenticate requests to Azure IoT Hub service APIs, like create device identity and invoke direct method. You can also use Azure role-based access control (Azure RBAC) to authorize those same service APIs. By using these technologies together, you can grant permissions to access IoT Hub service APIs to an Azure AD security principal. This security principal could be a user, group, or application service principal.
1717

18-
Authenticating access by using Azure AD and controlling permissions by using Azure RBAC provides improved security and ease of use over [security tokens](iot-hub-dev-guide-sas.md). To minimize potential security issues inherent in security tokens, we recommend that you use Azure AD with your IoT hub whenever possible.
18+
Authenticating access by using Azure AD and controlling permissions by using Azure RBAC provides improved security and ease of use over [security tokens](iot-hub-dev-guide-sas.md). To minimize potential security issues inherent in security tokens, we recommend that you [use Azure AD with your IoT hub whenever possible](#azure-ad-access-and-shared-access-policies).
1919

2020
> [!NOTE]
2121
> Authentication with Azure AD isn't supported for the IoT Hub *device APIs* (like device-to-cloud messages and update reported properties). Use [symmetric keys](iot-hub-dev-guide-sas.md#use-a-symmetric-key-in-the-identity-registry) or [X.509](iot-hub-x509ca-overview.md) to authenticate devices to IoT Hub.
2222
23-
## Authorization in IoT Hub
24-
25-
*Authorization* is the process of confirming permissions for an authenticated user or device on IoT Hub. It specifies what resources and commands you're allowed to access, and what you can do with those resources and commands. Authorization is sometimes shortened to *AuthZ*. Authorization is separate from *authentication*, which is the process of proving that you are who you say you are.
26-
27-
This article describes authorization using **Azure Active Directory (Azure AD) integration** for service APIs. Azure provides identity-based authentication with AAD and fine-grained authorization with Azure role-based access control (Azure RBAC). Azure AD and RBAC integration is supported for IoT hub service APIs only. For other authorization options, see [Authorize access with shared access signatures](authorize-sas.md).
28-
29-
> [!TIP]
30-
> You can enable a lock on your IoT resources to prevent them being accidentally or maliciously deleted. To learn more about Azure Resource locks, please visit, [Lock your resources to protect your infrastructure](../azure-resource-manager/management/lock-resources.md?tabs=json)
31-
3223
## Authentication and authorization
3324

25+
*Authentication* is the process of proving that you are who you say you are. This is achieved by verifying of the identity of a user or device to IoT Hub. It's sometimes shortened to *AuthN*. *Authorization* is the process of confirming permissions for an authenticated user or device on IoT Hub. It specifies what resources and commands you're allowed to access, and what you can do with those resources and commands. Authorization is sometimes shortened to *AuthZ*.
26+
3427
When an Azure AD security principal requests access to an IoT Hub service API, the principal's identity is first *authenticated*. For authentication, the request needs to contain an OAuth 2.0 access token at runtime. The resource name for requesting the token is `https://iothubs.azure.net`. If the application runs in an Azure resource like an Azure VM, Azure Functions app, or Azure App Service app, it can be represented as a [managed identity](../active-directory/managed-identities-azure-resources/how-managed-identities-work-vm.md).
3528

3629
After the Azure AD principal is authenticated, the next step is *authorization*. In this step, IoT Hub uses the Azure AD role assignment service to determine what permissions the principal has. If the principal's permissions match the requested resource or API, IoT Hub authorizes the request. So this step requires one or more Azure roles to be assigned to the security principal. IoT Hub provides some built-in roles that have common groups of permissions.

0 commit comments

Comments
 (0)