首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用SharePoint cURL进行在线身份验证(使用ADFS2.1作为IP)

使用SharePoint cURL进行在线身份验证(使用ADFS2.1作为IP)
EN

Stack Overflow用户
提问于 2015-02-19 22:43:35
回答 1查看 10.4K关注 0票数 6

我正在尝试设置一个简单的脚本,使用cURL通过以下操作监视我们的SharePoint在线站点:

  1. 使用联邦标识(ADFS 2.1)登录到我们的Office 365环境中,使用"../adfs/services/trust/13/UsernameMixed“端点
  2. 获取SharePoint cookie (FedAuth等)
  3. 浏览到SharePoint站点(验证内容等)

为了执行第一步,我使用cURL向我们的ADFS端点提交以下帖子:

代码语言:javascript
复制
curl https://sts.contoso.com/adfs/services/trust/13/UsernameMixed --data @req.txt -H "Content-Type: application/soap+xml" -o out.txt

我发送的SOAP信封请求以下内容(这只是请求的摘录):

代码语言:javascript
复制
<trust:RequestSecurityToken xmlns:trust="http://docs.oasis-open.org/ws-sx/ws-trust/200512">
    <wsp:AppliesTo xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy">
        <a:EndpointReference>
            <a:Address>https://login.microsoftonline.com/extSTS.srf</a:Address>
        </a:EndpointReference>
    </wsp:AppliesTo>
    <trust:KeyType>http://docs.oasis-open.org/ws-sx/ws-trust/200512/Bearer</trust:KeyType>
    <trust:RequestType>http://docs.oasis-open.org/ws-sx/ws-trust/200512/Issue</trust:RequestType>
    <trust:TokenType>urn:oasis:names:tc:SAML:1.0:assertion</trust:TokenType>
</trust:RequestSecurityToken>

我从这里得到的响应包含一个X509证书、一个摘要和一个签名,我不知道该如何处理。我在网上看到的所有指南都会从这个初始请求返回一个"BinarySecurityToken“,您可以提取该请求并将其发布到Sharepoint.com,以获得获得访问所需的cookie。诚然,他们都在使用MicrosoftOnline STS (云凭据),所以这仅仅是Microsoft可以实现的东西,而不是ADFS服务器吗?

或者我的做法有什么明显的错误吗?

任何帮助都将不胜感激。

干杯,

邓肯

EN

回答 1

Stack Overflow用户

发布于 2015-03-01 22:15:04

因此,我解决了这个问题,找到了这个有用的堆栈答案(对于一个非常类似的问题),它向我展示了发送到Microsoft (底部答案)的格式:

Claim auth from ADFS

做完这件事后,我得到了“t=Eddejdnefdn23enjd.”值,我能够将其发布到我的SharePoint站点,并获得必要的SP cookie返回(FedAuth等)。

我现在被困在如何让这个概念与OWA一起工作..。与我应用相同逻辑时一样,Microsoft STS使用密码数据返回加密的XML,而不是二进制安全令牌。这又使我感到困惑,所以如果有人有任何想法请告诉我。

干杯

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28618480

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档