当ページでは、OAuth認証(リフレッシュトークンで有効期限を延長)を使用したAPIへの接続方法についてご紹介します。
①SeciossLink管理コンソール > システム > 接続アプリケーション > 接続アプリケーション登録 から以下を登録
アプリケーションID:任意の値
アプリケーション名:任意の値
アプリケーション種類:OAuthクライアント
クライアントシークレット: クライアント側のシークレットを登録
リダイレクトURI: OAuthの応答を行うクライアント側のURLを指定
※「クライアントシークレット」と自動生成される「クライアントID」はメモします。
※リダイレクトURIは「https://localhost/」の利用できます。
②以下のURLにブラウザでアクセスし、SSOの認証を管理者IDでログイン
https://slink.secioss.com/service/oauth/authorize.php?client_id=<クライアントID>&response_type=code&redirect_uri=<リダイレクトURI>
※<リダイレクトURI>は接続アプリケーション登録時のURIでないとSeciossLink側でエラーになります。
③アプリケーションの利用同意
初回取得時、同意画面が出る場合は同意します。
④認可コード発行&リダイレクト
クエリストリングに認可コードが付与された状態で指定したリダイレクト先へリダイレクトされます。
URI上のcode以下(code=xxxxx) が認可コードとなるのでメモをします。
⑤アクセストークンの取得
#curl -X POST https://slink.secioss.com/service/oauth/token.php -F grant_type=authorization_code -F client_id=<クライアントID> -F client_secret=<クライアントシークレット> -F code=<code> -F redirect_uri=<リダイレクトURI>
<レスポンス(例)>{"token_type":"Bearer","access_token":"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx","expires_in":3600,"scope":"provisioning","refresh_token":"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"}
※②~⑤までの作業は手動の場合、30秒以内に実施しないと期限切れになります。
⑥ユーザ検索APIを実行(例)
#curl -sk https://slink.secioss.com/admin/api/ -H "Authorization: Bearer <⑤で取得したアクセストークン値>" -F action_user_read=true -F id=<ユーザーID@テナントID>
⑦リフレッシュトークンを使用したアクセストークンの更新方法
#curl -X POST https://slink.secioss.com/service/oauth/token.php -F grant_type=refresh_token -F client_id=<クライアントID> -F client_secret=<クライアントシークレット> -F refresh_token=<⑤で取得したリフレッシュトークン値>
※リフレッシュトークンの有効期限は 2592000秒 (30日)に設定されています。