SharePoint Online(SPO)は、 クレームベースの認証をサポートしています。
次の図は、SPOで認証がどのように実行されるかを示しています。
この投稿によると、認証プロセスは次の手順で構成されています。
手順:
- SAMLリクエストをSTSに送信する
- SAML応答を受信する
- セキュリティトークンをSharePointOnlineに送信する
- 認証Cookieを受信する
- 認証Cookieを含むリクエストを送信する
phpSPO-PHP用のSharePointクライアントはSPO認証をサポートしています。
ライブラリは、PHPアプリケーション用のSharePoint Online(SPO)クライアントを提供します。これにより、SharePoint 2013 REST/ODataベースのAPIを使用してSharePointデータに対してCRUD操作を実行できます。
例
SharePoint Online(SPO)で認証を実行する方法:
try {
$client = new SPOClient($url);
$client->signIn($username,$password);
echo 'You have authenticated successfully\n';
}
catch (Exception $e) {
echo 'Authentication failed: ', $e->getMessage(), "\n";
}
次の例は、SharePointリストデータに対してCRUD操作を実行する方法を示しています。
<?php
require_once 'SPOClient.php';
$username = 'username@tenant.onmicrosoft.com';
$password = 'password';
$url = "https://tenant.sharepoint.com/";
$client = new SPOClient($url);
$client->signIn($username,$password);
//Get Tasks list
$listTitle = 'Tasks';
$list = $client->getList($listTitle);
//Create a Task item
$itemProperties = array('Title' => 'Order Approval', 'Body' => 'Order approval task');
$taskItem = $list->addItem($itemProperties);
print "Task '{$taskItem->Title}' has been created succesfully.\r\n";
$itemId = $taskItem->Id;
//Update a Task item
$itemProperties = array('PercentComplete' => 1);
$list->updateItem($itemId,$itemProperties);
//Delete a Task item
$list->deleteItem($itemId);
?>
参考文献
PHP用のSharePointOnlineクライアント