通过PHP和SOAP对Sharepoint / Office356进行身份验证(声明)

时间:2012-08-15 16:41:53

标签: php sharepoint authentication soap office365

我正在尝试使用需要身份验证的PHP5标准SOAP lib向Sharepoint列表(通过'http://url.co.uk/_vti_bin/Lists.asmx?WSDL)发出SOAP请求。我使用NTLM身份验证工作正常(这很痛苦,但最终工作)但现在项目的职责是通过CLAIMS进行身份验证,以便它可以用于Sharepoint安装或office365实例。

我从一开始就意识到标准的SOAP身份验证不起作用......但我还是试过了!不出所料,我收到错误回复“List Fault code:HTTPList Fault string:Forbidden”。

是否可以通过基于纯PHP / SOAP的解决方案通过CLAIMS进行身份验证,如果是,那么实现此目标的最佳方法是什么?我已经阅读了有关使用Apache技巧等进行身份验证的各种解决方案的不同解决方案的各种声明。我正在开发的项目要求这是一个纯PHP解决方案。

值得指出的是,我不是MS开发人员,对CLAIMS身份验证知之甚少(可能没有帮助!)

3 个答案:

答案 0 :(得分:1)

答案 1 :(得分:1)

phpSPO - SharePoint client for PHP库允许您使用基于REST / OData的SharePoint Online API对SharePoint列表数据执行CRUD操作。

当前版本使用基于声明的身份验证支持SharePoint Online。

实施例

如何在SharePoint Online(SPO)中执行身份验证:

try {
    $client = new SPOClient($url);
    $client->signIn($username,$password);
    echo 'You have been authenticated successfully\n';
}
catch (Exception $e) {
    echo 'Authentication failed: ',  $e->getMessage(), "\n";
}

答案 2 :(得分:0)