我需要在我的应用程序(C#)中获得Azure token来对用户执行Graph API操作,但是当应用程序调用时没有sign in (应用程序必须是全自动的,在计时器作业中工作),所以我有一个问题,如何让令牌获取过程完全自动化(没有用户)?
我找到的关于这个主题的所有内容:Get access without a user,但我未能重新创建它。
发布于 2018-03-23 16:58:29
发布于 2018-03-24 00:33:39
使用OAuth代表的工作方式与您描述的完全相同。使用哪种代表方法,无需用户交互即可获得访问下游API (例如Graph API)的用户同意。换句话说,用户身份和权限在完整的请求链中以静默方式委派。在真实的企业环境中,你的应用程序通常会由另一个身份提供商(例如活动目录)进行身份验证,而不是Azure AD,然后它会请求对Azure AD OAuth端点的授权。
请求访问令牌时,必须将其类型设置为requested_token_use=on_behalf_of
下面是POST到端点https://docs.microsoft.com/en-us/azure/active-directory/develop/active-directory-v2-protocols-oauth-on-behalf-of的引用
下面是代表https://docs.microsoft.com/en-us/outlook/add-ins/authenticate-a-user-with-an-sso-token使用OAuth进行单点登录身份验证的参考
https://stackoverflow.com/questions/49444751
复制相似问题