如何在 sharepoint 2013 中自定义 Windows 身份验证弹出窗口?
Posted
技术标签:
【中文标题】如何在 sharepoint 2013 中自定义 Windows 身份验证弹出窗口?【英文标题】:How can I customize windows authentication pop up in sharepoint 2013? 【发布时间】:2016-10-21 14:59:06 【问题描述】:和之前我在这里发布问题一样:
How Can I pass EffectiveUserName to SSAS through Excel Service using FBA(Forms based authentication) in SharePoint 2013
最后我决定使用基于声明的 Windows 身份验证,因为这种模式将 EffectiveUserName 从 excel 服务发送到 ssas。
现在我们需要在 SharePoint 2013 中创建一个基于自定义声明的 Windows 身份验证登录页面,而无需使用其他身份验证方法。 下图显示弹出窗口:
我确实想创建一个像这个弹出页面一样工作的自定义 aspx 页面。当用户想登录时,这个aspx显示而不是弹出windows安全。
有一些参考可以做到这一点
https://blogs.msdn.microsoft.com/chunliu/2010/09/21/creating-a-custom-login-page-for-windows-authentication/
但它不起作用,不完整,也无济于事。用户希望仅使用此身份验证方法登录系统。如何自定义?
【问题讨论】:
到目前为止你尝试了什么? 我们首先使用FBA登录用户。一切都很好,直到我们的项目雇主希望根据已经在 SSAS 端定义的角色为每个用户显示来自 SSAS 多维数据集的数据子集。我们测试了很多东西,比如 sss(安全存储盒),但它们都没有将 EffectiveUserName 传递给 SSAS。因此,角色不适用于多维数据集,并且在 sharepoint 2013 的 excel 服务中引发错误。但是当我使用 Windows Auth 时,有效用户名传递给 SSAS。谢谢 【参考方案1】:在上网很多之后,我发现了这个。你在这里:VsFile
【讨论】:
感谢您发布此信息。在这里失去了我的想法:)。我在 SPSecurity.RunWithElevatedPrivileges(() => federationAuthenticationModule.SetPrincipalAndWriteSessionToken(token, SPSessionTokenWriteType.WritePersistentCookie)) 上仍然遇到一个错误;你调用的对象是空的。我的安全令牌没有任何安全密钥。会是这个原因吗? 在手头没有异常的完整堆栈跟踪的情况下,很难说出为什么会收到 NullReferenceException。但作为一个疯狂的猜测,我可以说它可能是为空的 federationAuthenticationModule。但我想你应该为这个问题打开另一个问题。如果您在此处发布该问题的地址,我将很乐意提供帮助。以上是关于如何在 sharepoint 2013 中自定义 Windows 身份验证弹出窗口?的主要内容,如果未能解决你的问题,请参考以下文章
HTML 在SharePoint 2010母版页中自定义功能区定位