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:
- Microsoft Entra ID ověří objekt zabezpečení a pak vrátí token OAuth 2.0.
- 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:
- Objekt zabezpečení vyžaduje token OAuth 2.0 z ID Microsoft Entra k ověření.
- 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.
- 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í.
- 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
Informace o tom, jak vytvořit aplikaci Azure a používat autorizaci Microsoft Entra, najdete v tématu Autorizace požadavků na prostředky služby Azure SignalR pomocí aplikací Microsoft Entra.
Informace o tom, jak nakonfigurovat spravovanou identitu a používat autorizaci Microsoft Entra, najdete v tématu Autorizace požadavků na prostředky služby Azure SignalR pomocí spravovaných identit Microsoft Entra.
Další informace o rolích a přiřazeních rolí najdete v tématu Co je řízení přístupu na základě role v Azure (Azure RBAC)?
Informace o vytváření vlastních rolí najdete v tématu Postup vytvoření vlastní role.
Informace o tom, jak používat pouze ověřování Microsoft Entra, najdete v tématu Zakázání místního ověřování.