我正在使用 Azure 托管的 WebSerice,它使用 ADFS 进行身份验证,并创建用户访问承载令牌,以便通过提供商托管的加载项与本地 SharePoint 进行通信。
我可以通过标准 SharePoint REST API 调用访问 SharePoint 数据。但是,当我尝试调用托管在同一 SharePoint 中的自定义 WCF 服务时,我未经过身份验证,因此我在 httpcontext、spcontext、operationcontext、thread.principal 或 ServiceSecurityContext 中没有当前用户、声明或身份。
因此,我无法使用自定义 SharePoint 托管的 WCF 服务访问 SharePoint 中的数据。
如何以与 SharePoint REST API 相同的方式使用不记名访问令牌强制进行身份验证?
我有类似的用例,使用托管的高信任 SharePoint 提供程序来访问 SharePoint Server 中托管的自定义 WCF。有什么办法可以解决Unauthorized 401吗?
我意识到高信任的 SharePoint 提供程序已针对有限的 WCF SharePoint 进行身份验证,例如 Client.svc 和 ListData.svc。但是,对于自定义 WCF 端点,我们收到未经授权的 401。
有什么办法可以克服这个问题吗?