PHP用Data APIライブラリ(その4・認証)

記事の作成など、Movable Typeへのログインが必要な処理を行う場合は、Data APIでも認証が必要です。
PHP用Data APIライブラリでも、認証を行うことができます。

1.認証が必要になる場面

管理画面にログインして行うことと同等の処理を、Data APIで行いたい場合に、認証が必要になります。
以下のような処理が該当します。

  • オブジェクトの作成
  • オブジェクトの更新
  • オブジェクトの削除
  • 未公開記事など、管理画面上でのみ見えるオブジェクトの取得

また、認証したユーザーの権限に応じて、Data APIで上記の処理を行うことができます。
例えば、記事作成権限がないユーザーで認証した場合は、認証していても、Data APIで記事の作成を行うことはできません。

2.authenticateメソッド

認証を行って、ログインした状態にするには、「authenticate」というメソッドを実行します。
パラメータとして、以下のキーを持つ連想配列を渡します。

キー
usernameユーザー名
passwordパスワード

例えば、ユーザー名が「foo」、パスワードが「bar」だとします。
また、Data APIのオブジェクトを変数$apiに割り当てているとします。
この場合、authenticateメソッドで認証するには、以下のように書きます。

$response = $api->authenticate(array('username' => 'foo', 'password' => 'bar'));
if (isset($response['error'])) {
  認証に失敗したときの処理
}
認証に成功した時の処理

認証に成功すると、そのユーザーの権限に応じて、記事の作成などの処理を行うことができます。

3.revokeAuthenticationメソッド

認証を解除して、ログアウトした状態にするには、「revokeAuthentication」というメソッドを実行します。
このメソッドにはパラメータはありません。