- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我们的客户有一个 Azure AD,其中包含其公司位于世界各地多个地点的所有用户。他希望他的用户能够使用 Azure AD 上的 Microsoft 帐户登录我们的 SP 应用程序。
显然,由于 Azure AD 使用 SAML 2.0,而 SharePoint 使用 Ws-Fed(与 SAML 1.1 类似),因此我们需要将这些声明从 2.0 转换为 Ws-Fed(或 SAML 1.1)。
这过去是使用 Azure 的 Azure 控制服务完成的,该服务将于今年年底(2018 年)弃用,因此开发使用它的解决方案是没有意义的。
因此,我们找到了一些指南 here和 here其中详细介绍了如何在 Azure AD 和 ADFS 之间创建声明提供者信任,以及如何在 AD FS 和 SharePoint 之间设置依赖方信任。
理论上,它的工作原理如下:
我们似乎在转换步骤中遇到了问题。我们已使用 Fiddler 调试了该过程,以查看发往和来自 AD FS 服务器的请求。 Azure AD 声明已成功发送到 AD FS,但当 AD FS 发出新声明(假定在 Ws-Fed 或 SAML 1.1 中)时遇到错误。
以下是 AD FS 的堆栈跟踪:
Microsoft.IdentityServer.Web.RequestFailedException: MSIS7012: An error occurred while processing the request. Contact your administrator for details. ---> System.ServiceModel.FaultException: MSIS3127: The specified request failed.
at Microsoft.IdentityServer.Protocols.WSTrust.WSTrustClientManager.Issue(Message request, WCFResponseData responseData)
at Microsoft.IdentityServer.Protocols.WSTrust.WSTrustClient.Issue(RequestSecurityToken rst, WCFResponseData responseData)
at Microsoft.IdentityServer.Web.FederationPassiveAuthentication.SubmitRequest(MSISRequestSecurityToken request)
--- End of inner exception stack trace ---
at Microsoft.IdentityServer.Web.FederationPassiveAuthentication.SubmitRequest(MSISRequestSecurityToken request)
at Microsoft.IdentityServer.Web.FederationPassiveAuthentication.RequestBearerToken(MSISSignInRequestMessage signInRequest, SecurityTokenElement onBehalfOf, SecurityToken primaryAuthToken, String desiredTokenType, UInt32 lifetime, Uri& replyTo)
at Microsoft.IdentityServer.Web.FederationPassiveAuthentication.RequestBearerToken(MSISSignInRequestMessage signInRequest, SecurityTokenElement onBehalfOf, SecurityToken primaryAuthToken, String desiredTokenType, MSISSession& session)
at Microsoft.IdentityServer.Web.FederationPassiveAuthentication.BuildSignInResponseCoreWithSerializedToken(String signOnToken, WSFederationMessage incomingMessage)
at Microsoft.IdentityServer.Web.FederationPassiveAuthentication.BuildSignInResponseForProtocolResponse(FederationPassiveContext federationPassiveContext)
at Microsoft.IdentityServer.Web.FederationPassiveAuthentication.BuildSignInResponse(FederationPassiveContext federationPassiveContext, SecurityToken securityToken)
System.ServiceModel.FaultException: MSIS3127: The specified request failed.
at Microsoft.IdentityServer.Protocols.WSTrust.WSTrustClientManager.Issue(Message request, WCFResponseData responseData)
at Microsoft.IdentityServer.Protocols.WSTrust.WSTrustClient.Issue(RequestSecurityToken rst, WCFResponseData responseData)
at Microsoft.IdentityServer.Web.FederationPassiveAuthentication.SubmitRequest(MSISRequestSecurityToken request)
我们还进行了内部测试,使用本地 AD 登录 SharePoint 网站,以确保 AD FS 和 SharePoint 之间的设置正确。这按预期工作,SharePoint 收到了步骤 4 中配置的声明。
对于从 SAML 2.0 到 Ws-Fed(或 SAML 1.1)的“转换”过程的任何帮助,我们将不胜感激。
Help me Obi-Wan Kenobi, you're my only hope!
最佳答案
将 AD FS 的 PreventTokenReplays 参数设置为 false
就我们而言,这就是让我们陷入困境几天的原因。我们读到的任何地方都没有提到这一点,我们只是在进入 AD FS 服务器的事件查看器并查看日志后才发现这一点。
打开 PowerShell,并使用以下命令添加 AD FS 管理单元:
Add-PSSnapin Microsoft.Adfs.PowerShell
然后,使用以下命令获取您的 AD FS 属性:
获取 adfsproperties
检查 PreventTokenReplays 参数的值。如果它设置为 false,你应该没问题。如果它设置为 true,则使用以下命令将其翻转为 false:
Set-adfsproperties -PreventTokenReplays $false
现在,您需要重新启动 AD FS 服务。只需转到 services.msc,找到 AD FS 2.0 Windows 服务,右键单击它,然后单击重新启动。
关于azure - 使用 Azure AD 对本地 Sharepoint 2013 进行身份验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48205834/
我必须使用 powershell 将 csv 文件字段上传到 Sharepoint 2010 列表中。我在 Windows XP 机器上工作。 当我尝试添加 pssnapin 时 Add-PSSnap
我需要以编程方式与来自 SharePoint 外部的 SharePoint 文件夹、文件和列表进行交互。大多数教程侧重于在 SharePoint 本身内工作,或者至少在安装 SharePoint 的同
我正在将用户写入 SharePoint 列表。 我读过 SharePoint 用户字段中有一个这样的字符串:userId;#userLoginName 在写入用户字段时,我尝试以相同的方式进行格式化,
是否可以在“提供商托管应用程序”中使用 SharePoint 左侧导航栏。 SharePoint 网站“PlaceHolderLeftNavBar”上显示的导航。有没有像某些 ajax 调用或 RES
我正在编写一个使用客户端对象模型访问 SharePoint 站点的应用程序,并且我在代理服务器后面。 我打电话... ClientContext.ExecuteQuery() 并收到以下错误消息...
我在远程计算机上有一个 SharePoint 2013 服务器。 我安装了这个:https://www.microsoft.com/en-us/download/details.aspx?id=355
我对强大的应用程序还很陌生,并试图为我的以下场景确定最佳行动方案。我想根据每个新的月度文件确定哪些用户提交了列表 A,哪些用户没有提交。 我在我创建的 Sharepoint 上有一个列表(列表 A),
我有两个共享点列表。 List1 - 这包含所有用户并且主键为 UserIdList2 - 这包含所有类(class),主键为 CourseId 现在我想定义第三个列表,它将其主键作为复合键。List
sharepoint 公告列表中的过期项目会怎样?我可以得到所有项目包括过期项目吗? 最佳答案 它们本身没有任何变化 - 它们只是使用带过滤器的 View 从显示中过滤掉。 这是使用的过滤器:- 你可
我有一个由其他人编程的页面布局 PeopleSearchResults.aspx。 它包含以下标签 SharePoint refine people search results control .
嗨,我想知道我可以使用哪种布局来获取右上角的搜索框。我使用(欢迎页面)空白Web部件页面)作为页面布局,但是它缺少右上角的搜索框。 还有另一个问题:如何在“创建页面”页面的列表中添加自己的布局。谢谢。
我正在拼命寻找一种工具,允许我将旧版本的文档从 SharePoint 2003 复制到 SharePoint 2007 站点。 你知道有什么简单的(最好是免费的)工具可以做到这一点吗? 最佳答案 这对
我可以在现成的SharePoint Web部件(RSS Viewer和Data View Web部件)中使用几个不同的.NET XSLT函数。 ... More...
就目前而言,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引起辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visit the he
我需要使用默认共享点过滤器 Web 部件传递的值。我看不到自定义共享点 Web 部件如何建立连接并获取数据。这可能吗? 已更新 提供者 WebPart 是默认的 SharePoint 列表过滤器 We
有一个关于同一主题的类似问题,但我正在添加这个问题并且之前的讨论已经解决。 这是原始问题的链接:Auto number column in SharePoint list 我现在试图找出在 MOSS
我们正在开发一个使用集成身份验证的 Intranet 门户,但站点的一些部分将暴露给不在域中的用户。对于这些用户,我们计划使用匿名访问。但是,我们整个应用程序的显示逻辑是基于登录到门户的用户,因此我们
市场上是否有任何工具可以有效分析 SharePoint 列表中的数据?我有一个客户希望分析和报告存储在 SharePoint 中的员工绩效数据。 最佳答案 Does SSRS give you any
我使用以下方法将文档上传到 sharepoint 文档库。 但是,在执行查询时 - 收到以下错误: 消息 = “远程服务器返回错误:(400) 错误请求。” 文件失败超过 1mb,所以我通过 shar
关闭。这个问题是opinion-based .它目前不接受答案。 想要改进这个问题? 更新问题,以便 editing this post 可以用事实和引用来回答它. 关闭 9 年前。 Improve
我是一名优秀的程序员,十分优秀!