微软365
微软365的交互市场集成,允许与以下服务连接:
- 交换网络
- 团队
- 深入研究
- SharePoint在线
- OneDrive
- 日历
- 任务
Interact利用微软Graph API和Sharepoint Search REST API与微软365生态系统进行交互。
概述
你需要做以下工作:
- 设置一个新的应用注册
- 收集以下信息:应用程序(客户端)ID,目录(租户)ID,Client Secret值.
- 根据您对市场功能的预期使用情况,授予必要的API权限
创建Azure应用程序注册
- 转到Azure门户-> Azure活动目录->应用程序注册https://portal.azure.com/#blade/Microsoft_AAD_IAM/ActiveDirectoryMenuBlade/RegisteredApps
- 创建一个新的注册.
- 为您的注册提供一个名称
- 向下滚动到重定向URI部分并添加您的重定向URI。重定向URI需要采用以下格式:
重定向:微软https:// {intranet-domain} /市场/ /账户/登录/ oauth2
如。
重定向:https://intranet.acme.com/marketplace/microsoft/account/sign-in/oauth2
- 复制应用程序(客户端)ID,目录(租户)ID应用程序屏幕中的值。
您将需要应用程序(客户端)ID第二个重定向URI的值,将采用以下格式:
重定向:https://intranet.acme.com/microsoftGraph/signin-oidc-{应用程序id}
如。
重定向:https://intranet.acme.com/microsoftGraph/signin-oidc-07a36512-ec60-495f-948a-829b0db4e340
- 点击重定向的uri.
- 进入第二阶段重定向的URI,如上文所述,应以以下格式显示:
重定向:https://intranet.acme.com/microsoftGraph/signin-oidc-{应用程序id}
如。
重定向:https://intranet.acme.com/microsoftGraph/signin-oidc-07a36512-ec60-495f-948a-829b0db4e340
- 确保ID标记复选框用于隐式流和混合流;
- 点击“保存”
- 创建一个客户的秘密.
- 导航到“证书和秘密”;
- 添加一个新客户机密,包括您选择的简要描述;
- 点击“添加”;
- 记录客户端值,以便以后使用。
- 您现在应该有以下信息:
- 应用程序(客户端)ID
- 目录(租户)ID
- 客户端秘密值
设置现在已经完成——一旦配置了交互市场设置,我们将返回这里添加必要的范围。
重定向url是区分大小写和空格的
请确保大小写与这里记录的完全匹配,并删除任何尾随和前导空格。
配置交互市场
- 从应用程序设置>控制面板>市场,选择Microsoft 365
- 从Azure应用程序注册中指定客户端ID、客户端秘密和权限。
2.1.客户机ID<-应用程序(客户端)ID
2.2.客户的秘密<-客户端秘密值
2.3.SharePoint实例(可选)<-如果你想利用SharePoint搜索REST API,你需要提供SharePoint实例值,看起来像这样:https://acme.sharepoint.com/
2.4.权威<- The The目录(租户)ID
并粘贴成如下格式:https://login.microsoftonline.com/ {directory-tenant-id} /
如。https://login.microsoftonline.com/38dad1b5-6969-4cd2-8f94-24f8c4c9baca/ - 下集成选项选择要使用的特性。雷竞技网站上
3.1.必要的API作用域将会被列出——把这个列表的副本作为需要添加回Azure应用程序注册的作用域(作用域的错误配置,将会导致一个错误AADSTS65001错误。) - 如果计划在线使用Sharepoint One搜索连接器或Exchange,则必须在“应用程序设置”>“控制面板”>“管理应用程序变量”>“集成”中启用Sharepoint和Outlook。
- 单击Save。
编辑市场配置
编辑现有的市场配置选项(包括Microsoft 365的集成选项),将强制清除所有使用过集成的用户的身份验证令牌。因此,要求它们在能够再次使用集成之前重新进行身份验证,任何范围更改都将立即应用到新的访问令牌(现有的服务提供者访问令牌在重新身份验证之前不会自动拾取更改)。
应用注册权限范围
可用作用域的列表如下所示。取决于你所选择的*集成选项在市场配置页面上,所需的范围将有所不同,只请求所需的内容(最小特权原则。)
应用程序设置>控制面板>市场,选择Microsoft 365,您可以看到每个M365集成需要哪些作用域。
Microsoft Graph API权限范围
Sharepoint API权限范围
范围 | 许可类型 | API | 微软的参考 |
---|---|---|---|
Sites.Search.All | 委托 | Sharepoint API | https://docs.microsoft.com/en-us/sharepoint/dev/general-development/sharepoint-search-rest-api-overview |
管理员同意
交互市场支持管理员同意的权限,而不是用户授权。因此,向添加的权限范围授予管理同意是很重要的。
(注意:此截图显示了完全配置的Microsoft 365集成交互市场的范围-您的范围将根据您的选择而有所不同*集成选项.)
- 点击授予行政许可
- 如果成功,您现在就可以在您的Interact内部网中使用Microsoft 365小部件和搜索集成。
SharePoint搜索REST API
当您在SharePoint在线用户的上下文中查询时,您将从以下方面得到结果:
- sharepointonline站点集合中的内容
- Microsoft 365组中的内容
- 共享OneDrive for Business内容(除了OneDrive for Business的所有者之外,其他人也可以访问的内容)
- 通过云搜索服务应用程序索引的来自SharePoint服务器的内容(云混合搜索)
指导
- 交互市场配置页面将允许深入配置所需的功能,并将提供应用程序注册所需的API权限列表。这允许最小特权原则在配置过程中应用。
- Microsoft Graph API可能会对其API强制执行速率限制。这些都不在Interact的控制范围内,我们目前没有对第三方服务应用API监控或封顶。更多信息可以在这里找到https://docs.microsoft.com/en-us/graph/throttling#service-specific-limits
- 来自Microsoft Graph API的错误将显示在小部件中,以帮助排除故障,并将记录在市场日志中。
- 以下格式的错误AADSTS65001是直接从Microsoft Graph API返回的错误。请参考Microsoft文档进行故障排除https://docs.microsoft.com/en-us/azure/active-directory/develop/reference-aadsts-error-codes
- Teams通道小部件将每20秒轮询Graph api以检索特定通道的更新。如果一个浏览器标签变成非活动,它将继续轮询。
- microsoft365 Marketplace集成不支持用户授权-所有权限范围必须获得管理员同意.
- 无缝Graph API登录可以在使用Azure AD SAML单点登录时实现,并结合Microsoft 365市场集成。请按照本指南了解更多信息交互软件自动登录到Microsoft Graph API的Microsoft 365.
- 在市场配置页面上列出的应用程序注册范围,将在用户登录时请求授权-用户身份验证后在应用程序注册门户中授予的任何范围,直到用户重新身份验证才会应用。如果您正在更改应用程序注册范围,我们强烈建议重新保存您的市场配置以清除所有会话。
- 在应用程序注册API权限面板中删除/撤销权限时,您可能会遇到延迟。这些延误是扶少团无法控制的。活动访问令牌和刷新令牌可能在一段时间内继续工作,甚至在权限被撤销之后,或者甚至在Azure应用程序被删除之后。要立即取消访问,清晰的“市场配置”页面上的Microsoft 365配置。
- 微软可能会隐式授予添加到应用注册和已接收的其他权限管理员同意.如。如果Marketplace要求
openid
,配置文件
而且日历。读
,但应用程序注册也有Sites.Read.All
而且目录中。读写
,那么用户将隐式地获得对所有5个作用域的访问权,而不仅仅是请求的3个。 - 一些范围像
日历。读
不是自动授予的美德有更大的权限范围授予,如日历。读写
或Group.ReadWrite.All
在应用程序注册。如果日历。读
或Group.Read.All
是市场配置列表,它必须在应用注册范围完全列出的市场配置列表。 - M365上租户地理位置的跨地理位置使用可能会对API使用较多的小部件(如Teams小部件)的响应时间产生可衡量的影响。
- 如。一个位于欧洲的M365租户,在北美托管的Interact站点上使用,对于每个API调用,都将有穿越这个地理距离的额外延迟。大多数集成都很简单,并且依赖于少量的API调用,但是像Teams这样的功能丰富的小部件,需要进行100次图遍历(API调用)来将对话上下文拼接在一起,并且会非常明显地经历这种延迟开销,因为每个API调用都需要在下一次发生之前穿越这个地理距离并返回。因此,务必记住M365租户地理位置和Interact站点地理位置。
- 通过调整Teams小部件设置来缩短日期范围、调整刷新率等,可以减少这种影响。
常见的图形API错误
错误(示例文本) | 常见原因 |
---|---|
AADSTS65001:用户或管理员没有同意使用ID为“07a36512-ec60-495f-948a-829b0db4e340”的名为“交互软件市场”的应用程序。为该用户和资源发送交互式授权请求。跟踪ID: f15b40f1-3085-4626-a022-e77d801853f3关联ID: 1b500252-fe7b-4705-84ed-c4bd0fd8e62c时间戳:21-03-18 17:02:05Z | 确保列出所有API范围在市场配置页面,正确添加,并已收到管理员同意. |
更新 大约两个月前