Udostępnij za pośrednictwem


Kontrolowanie dostępu do usługi Azure IoT Hub Device Provisioning Service (DPS) przy użyciu identyfikatora Entra firmy Microsoft (wersja zapoznawcza)

Identyfikator Entra firmy Microsoft umożliwia uwierzytelnianie żądań w interfejsach API usługi Azure IoT Hub Device Provisioning Service (DPS), takich jak tworzenie tożsamości urządzenia i wywoływanie metody bezpośredniej. Możesz również użyć kontroli dostępu opartej na rolach (RBAC) platformy Azure, aby autoryzować te same interfejsy API usług. Korzystając ze sobą z tych technologii, możesz udzielić uprawnień dostępu do interfejsów API usługi Azure IoT Hub Device Provisioning Service (DPS) do podmiotu zabezpieczeń firmy Microsoft Entra. Ten podmiot zabezpieczeń może być użytkownikiem, grupą lub jednostką usługi aplikacji.

Uwierzytelnianie dostępu przy użyciu identyfikatora Entra firmy Microsoft i kontrolowania uprawnień przy użyciu kontroli dostępu opartej na rolach platformy Azure zapewnia lepsze zabezpieczenia i łatwość korzystania z tokenów zabezpieczających. Aby zminimalizować potencjalne problemy z zabezpieczeniami związane z tokenami zabezpieczającymi, zalecamy używanie identyfikatora Entra firmy Microsoft z usługą Azure IoT Hub Device Provisioning Service (DPS), jeśli jest to możliwe.

Uwaga

Uwierzytelnianie przy użyciu identyfikatora Entra firmy Microsoft nie jest obsługiwane w przypadku interfejsów API urządzeń usługi Azure IoT Hub Device Provisioning Service (DPS) (takich jak wyszukiwanie stanu rejestracji urządzenia lub rejestracji urządzenia). Użyj kluczy symetrycznych, X.509 lub TPM do uwierzytelniania urządzeń w usłudze Azure IoT Hub Device Provisioning Service (DPS).

Uwierzytelnianie i autoryzacja

Gdy podmiot zabezpieczeń firmy Microsoft Entra żąda dostępu do interfejsu API usługi Azure IoT Hub Device Provisioning Service (DPS), tożsamość podmiotu zabezpieczeń jest najpierw uwierzytelniana. W przypadku uwierzytelniania żądanie musi zawierać token dostępu OAuth 2.0 w czasie wykonywania. Nazwa zasobu żądania tokenu to https://azure-devices-provisioning.net. Jeśli aplikacja działa w zasobie platformy Azure, na przykład maszynie wirtualnej platformy Azure, aplikacji usługi Azure Functions lub aplikacji usługi aplikacja systemu Azure Service, może być reprezentowana jako tożsamość zarządzana.

Po uwierzytelnieniu podmiotu zabezpieczeń firmy Microsoft następnym krokiem jest autoryzacja. W tym kroku usługa Azure IoT Hub Device Provisioning Service (DPS) używa usługi przypisania roli Entra firmy Microsoft, aby określić, jakie uprawnienia ma podmiot zabezpieczeń. Jeśli uprawnienia podmiotu zabezpieczeń są zgodne z żądanym zasobem lub interfejsem API, usługa Azure IoT Hub Device Provisioning Service (DPS) autoryzuje żądanie. Dlatego ten krok wymaga przypisania co najmniej jednej roli platformy Azure do podmiotu zabezpieczeń. Usługa Azure IoT Hub Device Provisioning Service (DPS) udostępnia wbudowane role, które mają wspólne grupy uprawnień.

Zarządzanie dostępem do usługi Azure IoT Hub Device Provisioning Service (DPS) przy użyciu przypisania roli RBAC platformy Azure

Dzięki usłudze Microsoft Entra ID i kontroli dostępu opartej na rolach usługa Azure IoT Hub Device Provisioning Service (DPS) wymaga od podmiotu zabezpieczeń żądającego interfejsu API odpowiedniego poziomu uprawnień do autoryzacji. Aby nadać podmiotowi zabezpieczeń uprawnienie, nadaj mu przypisanie roli.

Aby zapewnić najmniejsze uprawnienia, zawsze przypisz odpowiednią rolę w najniższym możliwym zakresie zasobów, co prawdopodobnie jest zakresem usługi Azure IoT Hub Device Provisioning Service (DPS).

Usługa Azure IoT Hub Device Provisioning Service (DPS) udostępnia następujące wbudowane role platformy Azure umożliwiające autoryzowanie dostępu do interfejsów API usługi DPS przy użyciu identyfikatora Microsoft Entra ID i kontroli dostępu opartej na rolach:

Rola opis
Współautor danych usługi Device Provisioning Service Umożliwia pełny dostęp do operacji płaszczyzny danych usługi Device Provisioning Service.
Czytnik danych usługi Device Provisioning Service Umożliwia pełny dostęp do odczytu do właściwości płaszczyzny danych usługi Device Provisioning Service.

Możesz również zdefiniować role niestandardowe do użycia z usługą Azure IoT Hub Device Provisioning Service (DPS), łącząc potrzebne uprawnienia . Aby uzyskać więcej informacji, zobacz Tworzenie ról niestandardowych dla kontroli dostępu opartej na rolach platformy Azure.

Zakres zasobu

Przed przypisaniem roli RBAC platformy Azure do podmiotu zabezpieczeń określ zakres dostępu, który powinien mieć podmiot zabezpieczeń. Zawsze najlepiej przyznać tylko najwęższy możliwy zakres. Role RBAC platformy Azure zdefiniowane w szerszym zakresie są dziedziczone przez pod nimi zasoby.

Ta lista zawiera opis poziomów, na których można określić zakres dostępu do usługi IoT Hub, począwszy od najwęższego zakresu:

  • Usługa Azure IoT Hub Device Provisioning Service (DPS). W tym zakresie przypisanie roli ma zastosowanie do usługi Azure IoT Hub Device Provisioning Service (DPS). Przypisanie roli w mniejszych zakresach, takich jak grupa rejestracji lub rejestracja indywidualna, nie jest obsługiwane.
  • grupa zasobów. W tym zakresie przypisanie roli ma zastosowanie do wszystkich centrów IoT w grupie zasobów.
  • Subskrypcja. W tym zakresie przypisanie roli ma zastosowanie do wszystkich centrów IoT we wszystkich grupach zasobów w subskrypcji.
  • Grupa zarządzania. W tym zakresie przypisanie roli ma zastosowanie do wszystkich centrów IoT we wszystkich grupach zasobów we wszystkich subskrypcjach w grupie zarządzania.

Uprawnienia do interfejsów API usługi Azure IoT Hub Device Provisioning Service (DPS)

W poniższej tabeli opisano uprawnienia dostępne dla operacji interfejsu API usługi Azure IoT Hub Device Provisioning Service (DPS). Aby umożliwić klientowi wywołanie określonej operacji, upewnij się, że przypisana rola RBAC klienta oferuje wystarczające uprawnienia dla operacji.

Akcja RBAC opis
Microsoft.Devices/provisioningServices/attestationmechanism/details/action Szczegóły mechanizmu zaświadczania pobierania
Microsoft.Devices/provisioningServices/enrollmentGroups/read Odczytywanie grup rejestracji
Microsoft.Devices/provisioningServices/enrollmentGroups/write Zapisywanie grup rejestracji
Microsoft.Devices/provisioningServices/enrollmentGroups/delete Usuwanie grup rejestracji
Microsoft.Devices/provisioningServices/enrollments/read Rejestracje odczytu
Microsoft.Devices/provisioningServices/enrollments/write Rejestracje zapisu
Microsoft.Devices/provisioningServices/enrollments/delete Usuwanie rejestracji
Microsoft.Devices/provisioningServices/registrationStates/read Odczytywanie stanów rejestracji
Microsoft.Devices/provisioningServices/registrationStates/delete Usuwanie stanów rejestracji

Rozszerzenie usługi Azure IoT dla interfejsu wiersza polecenia platformy Azure

Większość poleceń względem usługi Azure IoT Hub Device Provisioning Service (DPS) obsługuje uwierzytelnianie firmy Microsoft Entra. Typ uwierzytelniania używanego do uruchamiania poleceń można kontrolować przy użyciu parametru --auth-type , który akceptuje key lub login wartości. Wartość key jest wartością domyślną.

  • Gdy --auth-type ma key wartość, interfejs wiersza polecenia automatycznie odnajduje odpowiednie zasady podczas interakcji z usługą Azure IoT Hub Device Provisioning Service (DPS).

  • Jeśli --auth-type wartość ma login wartość, token dostępu z interfejsu wiersza polecenia platformy Azure zalogowany w jednostce jest używany do operacji.

  • Obecnie obsługiwane --auth-typesą następujące polecenia:

    • az iot dps enrollment
    • az iot dps enrollment-group
    • az iot dps registration

Aby uzyskać więcej informacji, zobacz stronę wydania rozszerzenia usługi Azure IoT dla interfejsu wiersza polecenia platformy Azure.

Zestawy SDK i przykłady

Dostęp do identyfikatora Entra firmy Microsoft z witryny Azure Portal

Uwaga

Dostęp do identyfikatora Entra firmy Microsoft z witryny Azure Portal jest obecnie niedostępny w wersji zapoznawczej.

Następne kroki

  • Aby uzyskać więcej informacji na temat zalet używania identyfikatora Entra firmy Microsoft w aplikacji, zobacz Integrowanie z identyfikatorem Entra firmy Microsoft.
  • Aby uzyskać więcej informacji na temat żądania tokenów dostępu z identyfikatora Entra firmy Microsoft dla użytkowników i jednostek usługi, zobacz Scenariusze uwierzytelniania dla identyfikatora Entra firmy Microsoft.