为什么在Azure AD的“请求API权限”中禁用“应用程序权限”?

Eri*_*sen 6 azure azure-active-directory azure-ad-b2b

我正在尝试向控制台应用程序授予在Azure AD中调用API的权限。

当我转到“添加权限”时,“应用程序权限”显示为灰色,并且我只能选择“授权权限”。

我的理解是,应用程序权限适用于控制台应用程序,因为它在后端运行,并且用户未登录。

从“应用程序权限”的帮助文本中:

您的应用程序在没有登录用户的情况下作为后台服务或守护程序运行。

“授权权限”的帮助文本:

您的应用程序需要以登录用户身份访问API。

为什么禁用“应用程序权限”?

Azure的“请求API权限”对话框,带有禁用的“应用程序权限”按钮

Ton*_* Ju 8

据我了解,您将公开受Azure AD保护的自定义api。如果是这样,则需要通过编辑api应用程序的清单来定义应用程序权限

在此处输入图片说明

表现:

"appRoles": [
        {
            "allowedMemberTypes": [
                "Application"
            ],
            "description": "Apps that have this role have the ability to invoke my API",
            "displayName": "Can invoke my API",
            "id": "fc803414-3c61-4ebc-a5e5-cd1675c14bbb",
            "isEnabled": true,
            "lang": null,
            "origin": "Application",
            "value": "myTestRole"
        }
    ]
Run Code Online (Sandbox Code Playgroud)

然后将显示应用程序权限。

在此处输入图片说明

  • 这看起来微软应该为此构建一个 GUI/UI 刀片,不是吗? (3认同)