繁体   English   中英

有没有不需要client_id的OAuth流程?

[英]Is there an OAuth flow that doesn't require a client_id?

我创建了一个使用 Bot Framework 的 Golang 端口构建的 Microsoft Teams 机器人。 它是一个存在于我的基础设施中的多租户机器人。

通过从市场(免费)中选择它,很容易将机器人添加为“Teams 应用程序”,但是,正确地到 function 它需要额外的 Microsoft Graph 权限。 专门阅读 MS Teams 频道/群聊的标题。

这对用户来说似乎是一个挑战,因为几乎没有人 - 即使是“IT 人员”似乎也能够正确添加所需的权限,即使有文档。

我个人一直在帮助他们,但它不是商业产品,因此从长远来看不可行。

我想找到一个 OAuth2 流程,它允许特权用户通过他们的Azure 租户进行身份验证,并为我的应用程序授予执行此操作所需的权限。 或者,也可以在安装机器人之前创建客户端注册。

每个 OAuth2 流程都要求我在发出请求之前拥有(或知道)我的 client_id。 鉴于它在用户租户中,我无权访问它; 不过,用户可以针对其 Azure AD 租户进行身份验证,因此他们必须收到一个不记名令牌,该令牌允许他们访问以创建或更新 Azure 应用程序的权限。

有机会使用 OAuth 2.0 客户端凭据。 此授权在 RFC 6749 中指定。此授权用于访问 web 托管资源。 该资源将根据应用程序的身份直接识别应用程序。 在服务器到服务器的通信中,我们可以使用 OAuth 2.0。 这可以称为“服务帐户”或“守护进程”。

Microsoft 标识平台和 OAuth 2.0 客户端凭据流

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM