如何将 o365/m365 oauth 流程与我的 slack 应用程序集成

How to integrate the o365/m365 oauth flow with my slack app

我正在编写一个应用程序,它允许我代表 slack/outlook/exchange 用户使用 EWS 从 outlook/exchange 获取特定数据。为了通过 Microsoft 的 oauth 流程进行身份验证,我创建了一个 azure a client_id 并想从应用程序主屏幕启动 m265 的 oauth 流程。为了创建客户端,我还需要在 Azure 广告中提供重定向 url。

在哪里可以找到有关如何最好地使用外部 oauth 流程的文档? (这与 installing/authorizing slack 中的应用程序无关)。

我想在安装后在我的应用程序主页上添加一个“连接到 Outlook”按钮以启动流程。

我应该直接调用 Microsoft 登录名 (oauth) url 还是应该先 link 到我的应用程序 Web 服务器? 调用 Microsoft 登录时,我需要提供一个重定向 url(需要与 azure 广告中的那个匹配),授权代码返回到该重定向。

对于某些应用程序(例如 slack 的 outlook 日历),这似乎是一个 slack url。

servicenow 似乎使用类似...

有没有办法在 slack 中为我的应用程序定义这样的 url? 如何将授权码移交给我的应用程序(我假设我为我的应用程序定义的请求url…?

感谢您的时间和考虑..

• 我在这里考虑到您正在通过 Azure AD 为您的应用程序提供身份验证,因此,要在收到授权码或令牌后配置重定向 URI post 身份验证成功,请参阅以下有关重定向的文档URI。它详细指定了在 Azure AD 中配置重定向 URL 时应遵循的配置限制:-

https://docs.microsoft.com/en-us/azure/active-directory/develop/reply-url

同样,要在 Slack 中为应用程序配置重定向 URL,请检查配置的回调 URL 设置,因为它是必需的,而重定向 URL 是可选的。此外,如果重定向 URL 不存在,Slack 会将用户重定向到应用设置中配置的回调 URL 本身。如果提供,重定向 URL 的主机和端口必须与回调 URL 完全匹配。重定向 URL 的路径必须引用回调 URL 的子目录。请关注以下link获取更多信息:-

https://api.slack.com/legacy/oauth

在上面 URL 中,请转到“使用访问令牌”和“重定向 URLs”部分以获取确切信息。

• 至于直接调用 Microsoft 登录 (OAuth)URL 或 link 将其连接到您应用的网络服务器,我建议您通过以下方式在 Slack 中配置您的 Azure AD 用户以下文档 link 或通过从应用程序库将其添加到 Azure AD 中的企业应用程序来使用 Slack 配置 SSO,然后配置通过 EWS 从 Exchange 访问数据所需的 API 权限。这样,可以为允许从 Exchange 访问特定数据的用户实现正确的配置和重定向。

https://docs.microsoft.com/en-us/azure/active-directory/saas-apps/slack-tutorial

https://docs.microsoft.com/en-us/azure/active-directory/saas-apps/slack-provisioning-tutorial