Sdílet prostřednictvím


Autorizace přístupu pomocí Microsoft Entra ID pro službu Azure SignalR

Azure SignalR Service podporuje ID Microsoft Entra pro autorizaci požadavků na své prostředky. S ID Microsoft Entra můžete pomocí řízení přístupu na základě role (RBAC) udělit oprávnění k objektu zabezpečení. Objekt zabezpečení je uživatel/skupina prostředků, aplikace nebo instanční objekt, jako jsou identity přiřazené systémem a identity přiřazené uživatelem.

Id Microsoft Entra ověřuje objekt zabezpečení a vrací token OAuth 2.0. Token se pak použije k autorizaci požadavku na prostředek služby Azure SignalR.

Autorizace požadavků ve službě Azure SignalR pomocí Microsoft Entra ID poskytuje vynikající zabezpečení a snadné použití v porovnání s autorizací přístupového klíče. Důrazně doporučujeme, abyste k autorizaci použili ID Microsoft Entra, pokud je to možné, protože zajišťuje přístup s minimálními požadovanými oprávněními.

Důležité

Zakázání místního ověřování může mít následující důsledky:

  • Aktuální sada přístupových klíčů se trvale odstraní.
  • Tokeny podepsané aktuální sadou přístupových klíčů přestanou být dostupné.

Přehled ID Microsoft Entra

Když se objekt zabezpečení pokusí získat přístup k prostředku služby Azure SignalR, musí být požadavek autorizovaný. Použití ID Microsoft Entra k získání přístupu k prostředku vyžaduje dva kroky:

  1. Microsoft Entra ID ověří objekt zabezpečení a pak vrátí token OAuth 2.0.
  2. Token se předá jako součást požadavku prostředku služby Azure SignalR pro autorizaci požadavku.

Ověřování na straně klienta s ID Microsoft Entra

Když použijete přístupový klíč, klíč se sdílí mezi aplikačním serverem (nebo aplikací funkcí) a prostředkem služby Azure SignalR Service. Služba Azure SignalR ověřuje požadavek na připojení klienta pomocí sdíleného klíče.

Pokud používáte ID Microsoft Entra, neexistuje žádný sdílený klíč. Místo toho služba Azure SignalR používá dočasný přístupový klíč pro podpisové tokeny používané v klientských připojeních. Pracovní postup obsahuje čtyři kroky:

  1. Objekt zabezpečení vyžaduje token OAuth 2.0 z ID Microsoft Entra k ověření.
  2. Instanční objekt zabezpečení volá ověřovací rozhraní API služby SignalR k získání dočasného přístupového klíče.
  3. Objekt zabezpečení podepíše token klienta pomocí dočasného přístupového klíče pro připojení klientů během vyjednávání.
  4. Klient používá token klienta pro připojení k prostředkům služby Azure SignalR Service.

Platnost dočasného přístupového klíče vyprší za 90 minut. Doporučujeme, abyste získali novou a otočit starou jednu jednou za hodinu.

Pracovní postup je sestavený v sadě SDK služby Azure SignalR pro aplikační servery.

Přiřazení rolí Azure pro přístupová práva

Microsoft Entra ID autorizuje přístupová práva k zabezpečeným prostředkům prostřednictvím Azure RBAC. Služba Azure SignalR definuje sadu předdefinovaných rolí Azure, které zahrnují běžné sady oprávnění pro přístup k prostředkům služby Azure SignalR. Můžete také definovat vlastní role pro přístup k prostředkům služby Azure SignalR.

Obor prostředku

Možná budete muset určit rozsah přístupu, který by měl objekt zabezpečení obsahovat, než k objektu zabezpečení přiřadíte jakoukoli roli Azure RBAC. Doporučujeme udělit pouze nejužší možný rozsah. Role Azure RBAC definované v širším rozsahu jsou zděděné prostředky pod nimi.

Přístup k prostředkům služby Azure SignalR můžete omezit na následujících úrovních, počínaje nejužším oborem.

Scope Popis
Jednotlivý prostředek Platí pouze pro cílový prostředek.
Skupina prostředků Platí pro všechny prostředky ve skupině prostředků.
Předplatné Platí pro všechny prostředky v předplatném.
Skupina pro správu Platí pro všechny prostředky v předplatných zahrnutých ve skupině pro správu.

Předdefinované role Azure pro prostředky služby Azure SignalR

Role Popis Případ použití
SignalR App Server Přístup k rozhraní API pro vytvoření připojení WebSocket a rozhraní API pro ověřování Nejčastěji se používá pro aplikační server.
Vlastník služby SignalR Úplný přístup ke všem rozhraním API roviny dat, včetně rozhraní REST API, rozhraní API pro vytváření připojení WebSocket a rozhraní API pro ověřování. Používá se pro bezserverový režim pro autorizaci s ID Microsoft Entra, protože vyžaduje oprávnění rozhraní REST API i oprávnění rozhraní API pro ověřování.
Vlastník rozhraní REST API služby SignalR Úplný přístup k rozhraním REST API roviny dat. Často se používá k zápisu nástroje, který spravuje připojení a skupiny, ale nevyužívá připojení nebo volání rozhraní API pro ověřování.
Čtečka rozhraní REST API služby SignalR Přístup jen pro čtení k rozhraním REST API roviny dat Běžně se používá k zápisu monitorovacího nástroje, který volá pouze rozhraní REST API služby Azure SignalR Service jen pro čtení.

Další kroky