我是一名开发人员,致力于通过Graph API访问O365数据的应用程序。我已经用我的公司帐户注册了一个应用程序。我有基于每个用户的身份验证。现在,我正在尝试使其正常运行,以便租户管理员可以在组织范围内为我的应用程序授予数据访问权限。我也有这个工作-我使用了/ adminconsent端点将管理员带到他已同意的页面。
我想知道的是文档中的一行:“您可以依靠管理员在Azure门户上授予您的应用所需的权限”。我试图弄清楚该程序是什么,以便可以为管理员用户记录该程序。我以为可能是去App Registrations了-在那我看到了创建新注册的选项。但这有它自己的客户ID。我是否不必以某种方式为其提供自己应用程序的客户ID?还是租户管理员会向我的应用程序提供其应用程序的客户ID的想法?还是我完全在错误的地方?
顺便说一句,如果相关的话,我没有使用任何身份验证库,只是从Windows桌面上运行的C ++程序进行直接http调用。
答案 0 :(得分:1)
据我了解,您的应用程序是多租户应用程序。只有您或租户中的管理员才能向您的应用程序授予权限。其他租户的管理员可以同意使用您的应用程序,但是他们无法控制权限。
更新:
您可以通过致电管理员同意端点来授予管理员同意。
https://login.microsoftonline.com/common/v2.0/adminconsent?
client_id={your_tenant_client_id}
&state=12345
&redirect_uri=http://localhost/myapp/permissions
&scope=
https://graph.microsoft.com/.default
如果您想grant admin consent via Azure portal。必须已在您的租户中预配了该应用程序。例如,如果至少一个用户已经同意该应用程序,则可以在您的租户中预配该应用程序。