Použití řízení přístupu na základě role ve službě Azure API Management

PLATÍ PRO: Všechny úrovně služby API Management

Azure API Management spoléhá na řízení přístupu na základě role v Azure (Azure RBAC), které umožňuje jemně odstupňovanou správu přístupu pro služby a entity API Management (například rozhraní API a zásady). Tento článek obsahuje přehled předdefinovaných a vlastních rolí ve službě API Management. Další informace o správě přístupu na webu Azure Portal najdete v tématu Začínáme se správou přístupu na webu Azure Portal.

Poznámka:

Při práci s Azure doporučujeme používat modul Azure Az PowerShellu. Začněte tím, že si projdete téma Instalace Azure PowerShellu. Informace o tom, jak migrovat na modul Az PowerShell, najdete v tématu Migrace Azure PowerShellu z AzureRM na Az.

Předdefinované role služby

API Management v současné době poskytuje tři předdefinované role a v blízké budoucnosti přidá dvě další role. Tyto role je možné přiřadit v různých oborech, včetně předplatného, skupiny prostředků a jednotlivé instance API Management. Pokud například přiřadíte uživateli roli „Čtenář služby API Management“ na úrovni skupiny prostředků, pak má uživatel přístup pro čtení ke všem instancím API Management ve skupině prostředků.

Následující tabulka obsahuje stručný popis předdefinovaných rolí. Tyto role můžete přiřadit pomocí webu Azure Portal nebo jiných nástrojů, včetně Azure PowerShellu, Azure CLI a rozhraní REST API. Podrobnosti o přiřazování předdefinovaných rolí najdete v tématu Přiřazení rolí Azure ke správě přístupu k prostředkům předplatného Azure.

Role Přístup pro čtení[1] Přístup pro zápis[2] Vytvoření, odstranění a škálování služby, síť VPN a vlastní konfigurace domény Přístup k portálu starší verze vydavatele Popis
Přispěvatel služby API Management Superuživatel. Má úplný přístup CRUD ke službám a entitám API Management (například k rozhraním API a zásadám). Má přístup k portálu starší verze vydavatele.
Čtenář služby API Management Má přístup jen pro čtení ke službám a entitě API Management.
Operátor služby API Management Může spravovat služby API Management, ale ne entity.

[1] Přístup ke čtení ke službám a entitám služby API Management (například rozhraní API a zásady).

[2] Přístup k zápisu do služeb a entit služby API Management s výjimkou následujících operací: vytváření, odstraňování a škálování instancí; konfigurace sítě VPN; a vlastní nastavení domény.

Předdefinované role pracovního prostoru

SLUŽBA API Management poskytuje následující předdefinované role pro spolupracovníky v pracovních prostorech v instanci služby API Management.

Spolupracovník pracovního prostoru musí mít přiřazenou roli v oboru pracovního prostoru i roli s oborem služby.

Role Scope Popis
Přispěvatel pracovního prostoru služby API Management pracovní prostor Může spravovat pracovní prostor a zobrazení, ale ne upravovat jeho členy. Tato role by měla být přiřazena v oboru pracovního prostoru.
Čtenář pracovního prostoru služby API Management pracovní prostor Má přístup jen pro čtení k entitě v pracovním prostoru. Tato role by měla být přiřazena v oboru pracovního prostoru.
Vývojář rozhraní API pro pracovní prostor služby API Management pracovní prostor Má přístup pro čtení k entitám v pracovním prostoru a přístup ke čtení a zápisu k entitám pro úpravy rozhraní API. Tato role by měla být přiřazena v oboru pracovního prostoru.
API Management Workspace API Product Manager pracovní prostor Má přístup pro čtení k entitám v pracovním prostoru a přístup ke čtení a zápisu k entitám pro publikování rozhraní API. Tato role by měla být přiřazena v oboru pracovního prostoru.
Vývojář rozhraní API pro pracovní prostor služby API management service Má přístup pro čtení ke značkům a produktům a přístup k zápisu, aby povoloval:

▪️ Přiřazení rozhraní API k produktům
▪️ Přiřazení značek k produktům a rozhraním API

Tato role by měla být přiřazena v oboru služby.
Product Manager rozhraní API pro pracovní prostor služby API management service Má stejný přístup jako vývojář rozhraní API pro pracovní prostor služby API služby API management a také přístup pro čtení uživatelů a přístup pro zápis, který umožňuje přiřazování uživatelů ke skupinám. Tato role by měla být přiřazena v oboru služby.

Vlastní role

Pokud žádná z předdefinovanýchrolíchm služebm nevyhovuje vašim konkrétním potřebám, můžete vytvořit vlastní role, které poskytují podrobnější správu přístupu pro entity služby API Management. Můžete například vytvořit vlastní roli, která má přístup jen pro čtení ke službě API Management, ale má přístup jen k zápisu do jednoho konkrétního rozhraní API. Další informace o vlastních rolích najdete v tématu Vlastní role v Azure RBAC.

Poznámka:

Aby bylo možné zobrazit instanci služby API Management na webu Azure Portal, musí vlastní role zahrnovat Microsoft.ApiManagement/service/read akci.

Když vytvoříte vlastní roli, je jednodušší začít s jednou z předdefinovaných rolí. Upravte atributy a přidejte akce, NotActions nebo AssignableScopes a uložte změny jako novou roli. Následující příklad začíná rolí Čtenář služby API Management a vytvoří vlastní roli s názvem Editor rozhraní API kalkulačky. Vlastní roli můžete přiřadit v oboru konkrétního rozhraní API. V důsledku toho má tato role přístup pouze k tomuto rozhraní API.

$role = Get-AzRoleDefinition "API Management Service Reader Role"
$role.Id = $null
$role.Name = 'Calculator API Contributor'
$role.Description = 'Has read access to Contoso APIM instance and write access to the Calculator API.'
$role.Actions.Add('Microsoft.ApiManagement/service/apis/write')
$role.Actions.Add('Microsoft.ApiManagement/service/apis/*/write')
$role.AssignableScopes.Clear()
$role.AssignableScopes.Add('/subscriptions/<Azure subscription ID>/resourceGroups/<resource group name>/providers/Microsoft.ApiManagement/service/<APIM service instance name>/apis/<API name>')
New-AzRoleDefinition -Role $role
New-AzRoleAssignment -ObjectId <object ID of the user account> -RoleDefinitionName 'Calculator API Contributor' -Scope '/subscriptions/<subscription ID>/resourceGroups/<resource group name>/providers/Microsoft.ApiManagement/service/<APIM service instance name>/apis/<API name>'

Článek o operacích poskytovatele prostředků Azure Resource Manageru obsahuje seznam oprávnění, která je možné udělit na úrovni služby API Management.

Další kroky

Další informace o řízení přístupu na základě role v Azure najdete v následujících článcích: