从ADFS声明auth

jwi*_*mer 14 c# authentication sharepoint adfs active-directory

我尝试通过WPF应用程序连接到SharePoint Online实例.我发现这篇文章描述了一个可能的解决方案,但问题是特定实例前面有一个Active Directory联合身份验证服务(ADFS),我不知道如何获取auth-token.(我无法为我的应用程序创建证书以对adfs进行身份验证.)

任何已经完成此操作的人都可以通过一些代码片段来支持我吗?

wol*_*ski 9

我和Fiddler一起玩过.基本上流程是这样的:

  • 从ADFS获取SAML令牌
  • 将其发布到https://login.microsoftonline.com/login.srf(正文应该是wa=wsignin1.0, wresult=<requestsecuritytokenresponse>…token…</rstr> and wctx=MEST=0&LoginOptions=2&wa=wsignin1%2E0&rpsnv=2&ct=1343219880&rver=6%2E1%2E6206%2E0&wp=MBI&wreply=https%3A%2F%2Fspirit365%2Esharepoint%2Ecom%2F%5Fforms%2Fdefault%2Easpx&id=500046&cbcxt=mai&wlidp=1&guest=1&vv=910&mkt=EN-US&lc=1033&bk=1343219930
  • 从Form中捕获名为"t"的隐藏输入
  • 将"t"发布到/_layouts/Authenticate.aspx.这应该给你FedAuth和rtFa cookie.

从这一点来说,这是一样的代码在这里:http://www.wictorwilen.se/Post/How-to-do-active-authentication-to-Office-365-and-SharePoint-Online.aspx


jwi*_*mer 5

我找到了解决方案并发了一篇关于它的帖子.我也把它放在github上.你可以找到我的博客文章与GitHub的链接沿着我的博客.

我希望这能帮助你,因为它帮助了我:-)