Ověřování Azure v Tvůrci rozhraní DATA API
Tvůrce rozhraní DATA API umožňuje vývojářům definovat ověřovací mechanismus (zprostředkovatel identity), který chce tvůrce rozhraní Data API použít k ověření, kdo provádí požadavky.
Ověřování se deleguje na podporovaného zprostředkovatele identity, kde je možné vydat přístupový token. Získaný přístupový token musí být součástí příchozích požadavků tvůrce rozhraní Data API. Tvůrce rozhraní DATA API pak ověří všechny prezentované přístupové tokeny a zajistí, aby tvůrce rozhraní Data API byl zamýšlenou cílovou skupinou tokenu.
Podporované možnosti konfigurace zprostředkovatele identity jsou:
- StaticWebApps
- Webové tokeny JSON (JWT)
Ve vývoji (AZ Login)
Použití Authentication='Active Directory Default'
v připojovacích řetězcích služby Azure SQL Database znamená, že se klient ověří pomocí přihlašovacích údajů Azure Active Directory (AAD). Přesná metoda ověřování je určená prostředím. Když vývojář spustí az login
, otevře Azure CLI okno prohlížeče s výzvou, aby se uživatel přihlásil pomocí účtu Microsoft nebo firemních přihlašovacích údajů. Po ověření Azure CLI načte a ukládá token propojený s identitou Azure Active Directory a ukládá ho do mezipaměti. Tento token se pak použije k ověření požadavků na služby Azure bez nutnosti přihlašovacích údajů v připojovacím řetězci.
"data-source": {
"connection-string": "...;Authentication='Active Directory Default';"
}
Pokud chcete nastavit místní přihlašovací údaje, jednoduše použijte az login
po instalaci Azure CLI.
az login
Ověřování Azure Static Web Apps (EasyAuth)
Tvůrce rozhraní DATA API očekává, že ověřování Azure Static Web Apps (EasyAuth) ověří požadavek, a při použití možnosti StaticWebApps
poskytne metadata o ověřeném uživateli v hlavičce X-MS-CLIENT-PRINCIPAL
HTTP. Na ověřená metadata uživatelů poskytovaná statickou webovou aplikací lze odkazovat v následující dokumentaci: Přístup k informacím o uživatelích.
Pokud chcete použít poskytovatele StaticWebApps
, musíte v části runtime.host
konfiguračního souboru zadat následující konfiguraci:
"authentication": {
"provider": "StaticWebApps"
}
Použití poskytovatele StaticWebApps
je užitečné, když plánujete spustit Tvůrce rozhraní Data API v Azure, hostovat ho pomocí služby App Service a spustit ho v kontejneru: Spuštění vlastního kontejneru ve službě Azure App Service.
JWT
Pokud chcete použít zprostředkovatele JWT, musíte nakonfigurovat oddíl runtime.host.authentication
zadáním potřebných informací k ověření přijatého tokenu JWT:
"authentication": {
"provider": "AzureAD",
"jwt": {
"audience": "<APP_ID>",
"issuer": "https://login.microsoftonline.com/<AZURE_AD_TENANT_ID>/v2.0"
}
}
Výběr rolí
Jakmile se požadavek ověří prostřednictvím některé z dostupných možností, použijí se role definované v tokenu k určení, jak se pravidla oprávnění vyhodnocují tak, aby autorizovala požadavku. Všechny ověřené žádosti se automaticky přiřadí k systémové roli authenticated
, pokud o použití není požadována role uživatele. Další informace viz autorizace.
Anonymní žádosti
Žádosti je možné provádět i bez ověření. V takových případech je žádost automaticky přiřazena k systémové roli anonymous
, aby byla řádně autorizována.
Hlavička požadavku X-MS-API-ROLE
Tvůrce rozhraní Data API vyžaduje hlavičku X-MS-API-ROLE
k autorizaci požadavků pomocí vlastních rolí. Hodnota X-MS-API-ROLE
musí odpovídat roli zadané v tokenu. Například pokud má token roli Sample.Role, pak X-MS-API-ROLE by měl být také Sample.Role. Další informace najdete v tématu role uživatelů autorizace.