你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

az ad app permission

管理应用程序的 OAuth2 权限。

命令

az ad app permission add

添加 API 权限。

az ad app permission admin-consent

通过管理员许可授予应用程序&委派的权限。

az ad app permission delete

删除 API 权限。

az ad app permission grant

向应用授予 API 委派权限。

az ad app permission list

列出应用程序请求的 API 权限。

az ad app permission list-grants

列出 Oauth2 权限授予。

az ad app permission add

添加 API 权限。

需要调用“az ad app permission grant”才能激活它。

若要获取资源应用的可用权限,请运行 az ad sp show --id <resource-appId>。 例如,若要获取 Microsoft 图形 API的可用权限,请运行az ad sp show --id 00000003-0000-0000-c000-000000000000。 属性 appRoles 下的应用程序权限对应于 Role --api 权限。 属性下的 oauth2Permissions 委托权限对应于 Scope --api-permissions。

az ad app permission add --api
                         --api-permissions
                         --id

示例

添加 Microsoft Graph 委托的权限 User.Read (登录并读取用户配置文件) 。

az ad app permission add --id {appId} --api 00000003-0000-0000-c000-000000000000 --api-permissions e1fe6dd8-ba31-4d61-89e7-88639da4683d=Scope

添加 Microsoft Graph 应用程序权限 Application.ReadWrite.All (读取和写入所有应用程序) 。

az ad app permission add --id {appId} --api 00000003-0000-0000-c000-000000000000 --api-permissions 1bfefb4e-e0b5-418b-a88f-73c46d2cc8e9=Role

必需参数

--api

RequiredResourceAccess.resourceAppId - 应用程序需要访问的资源的唯一标识符。 它应等于目标资源应用程序上声明的 appId。

--api-permissions

{id}={type} 的空间分隔列表。 {id} resourceAccess.id - 资源应用程序公开的 oauth2PermissionScopes 或 appRole 实例之一的唯一标识符。 {type} 是 resourceAccess.type - 指定 ID 属性引用 oauth2PermissionScopes 还是 appRole。 可能的值包括:适用于 OAuth 2.0 权限范围的作用域 () 或应用角色) 的角色 (。

--id

标识符 URI、应用程序 ID 或对象 ID。

通过管理员许可授予应用程序&委派的权限。

必须以全局管理员身份登录。

az ad app permission admin-consent --id

通过管理员许可授予应用程序&委派的权限。 自动生成的 ()

az ad app permission admin-consent --id 00000000-0000-0000-0000-000000000000
--id

标识符 URI、应用程序 ID 或对象 ID。

az ad app permission delete

删除 API 权限。

az ad app permission delete --api
                            --id
                            [--api-permissions]

示例

删除 Azure Active Directory Graph 权限。

az ad app permission delete --id eeba0b46-78e5-4a1a-a1aa-cafe6c123456 --api 00000002-0000-0000-c000-000000000000

删除 Azure Active Directory Graph 委派的权限 User.Read (登录并读取用户配置文件) 。

az ad app permission delete --id eeba0b46-78e5-4a1a-a1aa-cafe6c123456 --api 00000002-0000-0000-c000-000000000000 --api-permissions 311a71cc-e848-46a1-bdf8-97ff7156d8e6

必需参数

--api

RequiredResourceAccess.resourceAppId - 应用程序需要访问的资源的唯一标识符。 它应等于目标资源应用程序上声明的 appId。

--id

标识符 URI、应用程序 ID 或对象 ID。

可选参数

--api-permissions

指定 ResourceAccess.id - 资源应用程序公开的 OAuth2Permission 或 AppRole 实例之一的唯一标识符。 空格分隔的列表 <resource-access-id>

az ad app permission grant

向应用授予 API 委派权限。

运行此命令时,应用必须存在服务主体。 若要创建相应的服务主体,请使用 az ad sp create --id {appId}。 对于应用程序权限,请使用“广告应用权限管理员许可”。

az ad app permission grant --api,
                           --id,
                           --scope
                           [--consent-type {AllPrincipals, Principal}]
                           [--principal-id]

示例

向本机应用程序授予访问 TTL 为 2 年的现有 API 的权限

az ad app permission grant --id e042ec79-34cd-498f-9d9f-1234234 --api a0322f79-57df-498f-9d9f-12678 --scope Directory.Read.All

必需参数

--api, --resource-id

有权访问的资源服务主体的 ID。 这标识客户端有权代表登录用户调用的 API。

--id, --client-id

有权在访问 API 时代表登录用户执行操作的应用程序的客户端服务主体的 ID。

--scope

委托权限的声明值的空格分隔列表,该声明值应包含在资源应用程序的访问令牌中, (API) 。 例如,openid User.Read GroupMember.Read.All。 每个声明值应与 API 定义的委托权限之一的值字段匹配,该字段在资源服务主体的 oauth2PermissionScopes 属性中列出。

可选参数

--consent-type

指示是否向客户端应用程序授予授权以模拟所有用户或仅特定用户。 “AllPrincipals”表示模拟所有用户的授权。 “主体”表示模拟特定用户的授权。 管理员可以代表所有用户授予同意。 在某些情况下,对于某些委派的权限,非管理员用户可能有权代表自己同意。

接受的值: AllPrincipals, Principal
默认值: AllPrincipals
--principal-id

当 consentType 为“Principal”时,代表其客户端访问资源的用户的 ID。 如果 consentType 为“AllPrincipals”,则此值为 null。 consentType 为“Principal”时是必需的。

az ad app permission list

列出应用程序请求的 API 权限。

az ad app permission list --id

示例

列出现有 AAD 应用的 OAuth2 权限

az ad app permission list --id e042ec79-34cd-498f-9d9f-1234234

必需参数

--id

关联的应用程序的标识符 URI、应用程序 ID 或对象 ID。

az ad app permission list-grants

列出 Oauth2 权限授予。

az ad app permission list-grants [--filter]
                                 [--id]
                                 [--show-resource-name {false, true}]

示例

列出向服务主体授予的 oauth2 权限

az ad app permission list-grants --id e042ec79-34cd-498f-9d9f-1234234123456

可选参数

--filter

OData 筛选器,例如 --filter “displayname eq 'test' and servicePrincipalType eq 'Application'”。

--id

标识符 URI、应用程序 ID 或对象 ID。

--show-resource-name -r

显示资源的显示名称。

接受的值: false, true