サインアップから Authlete サービス作成までの手順

Table of Contents

はじめに

このドキュメントでは、Authlete に初めてサインアップし、新規 Authlete API サービスの作成と、そのサービスに新規クライアント登録を行うまでの手順について説明します。

手順の流れ

本チュートリアルでは以下の順序で設定を進めます。

  1. Authlete にサインアップ
  2. API サービスインスタンスを作成
  3. クライアントアプリ開発者コンソールにログイン
  4. OAuth/OIDC クライアントを登録
  5. API に接続

手順の流れ

1. Authlete にサインアップ

Authlete を認可サーバーのバックエンドとして用いる場合には、まず Authlete の「サービスオーナー」のアカウントを取得する必要があります。 取得は以下のページから行います。入力した「ログインID」と「パスワード」を忘れないようにしましょう。

https://so.authlete.com/accounts/signup

アカウントが登録されているかどうか、「サービス管理者コンソール」へログインして確認してみましょう。 Web ブラウザを用いて以下のページにアクセスし、「ログインID」と「パスワード」を用いてログインします。

https://so.authlete.com/accounts/login

ログインに成功すると以下のようなページが表示されます。

これで Authlete のサービス管理者機能が利用できるようになりました。 なおログアウトする場合にはページ右上の「ログアウト」をクリックします。

2. API サービスインスタンスを作成

それでは、最初の Authlete API サービスを準備します。 再度 Authlete のサービス管理者コンソール https://so.authlete.com/accounts/login にログインし、右側の「サービス作成」をクリックします。

サービス作成のページが表示されます。任意の「サービス名」を入力し、「作成」をクリックします。 確認のダイアログが表示されるので「OK」をクリックします。

新規サービスの作成が完了しました。

自動生成された「APIキー」と「APIシークレット」は、次にクライアントアプリ開発者コンソールにログインするときのログインID・パスワードとして用いるとともに、認可サーバーが Authlete API にリクエストを行う際のクレデンシャルとなります。

また、「クライアントアプリ開発者コンソール」の URL が表示されています。次の手順では、この URL にアクセスすることになります。

項目
API キー 自動生成された値(例: 10723797812772
API シークレット 自動生成された値(例: ekYoYTI84qZcpe6bXGzDwduQ1fGBYxJT8K8Tnwd7poc
クライアントアプリ開発者コンソール 自動生成された値(例: https://cd.authlete.com/10723797812772

3. クライアントアプリ開発者コンソールにログイン

次に、この新規サービスに、さらに新規クライアントの設定を追加します。 Authlete のクライアントアプリ開発者コンソール(例: https://cd.authlete.com/10723797812772)にアクセスし、ログイン ID として先ほど作成したサービスの「API キー(例: 10723797812772)」を、パスワードとして同じく「API シークレット(例: ekYoYTI84qZcpe6bXGzDwduQ1fGBYxJT8K8Tnwd7poc)」を用いてログインします。

4. OAuth/OIDC クライアントを登録

クライアントアプリ開発者コンソールのログイン後のページです。右手にある「アプリ作成」をクリックします。

アプリ作成のページです。まず「基本情報」タブが表示されます。

本チュートリアルでは以下のような OAuth/OIDC クライアントを登録することとします。

まず、任意の「クライアント名」を入力します。 またクライアントタイプとして CONFIDENTIAL を選択します。次に、「基本情報」タブの隣にある「認可」タブをクリックします。

「認可」タブをクリック後のページです。ここでは「リダイレクト URI」と「クライアント認証方式」を、以下の通り指定します。

項目
リダイレクト URI https://client.example.org/cb/example.com
クライアント認証方式 CLIENT_SECRET_BASIC

指定後、ページ下方にある「作成」をクリックします。確認のダイアログが表示されるので「OK」をクリックします。

これにより、サービスへのクライアント情報の登録が完了しました。 自動生成されている「クライアント ID」と「クライアントシークレット」はそれぞれ、クライアントが認可サーバーにリクエストを行う際の client_idclient_secret の値として用いられます。 また、そのほか指定した各値が正しく設定されていることも確認しましょう。

項目
クライアント ID 自動生成された値(例: 12800697055611
クライアントシークレット 自動生成された値(例: dcDHEXr_tXNi7QdIMXLSXpXAy_j7Cr4C4LT2xAukQcW_09E2Ag1jTBdwpQrG-HBxflPF4Bz_Nb9Zd_ySAxOs6A
クライアントタイプ CONFIDENTIAL
リダイレクト URI https://client.example.org/cb/example.com
クライアント認証方式 CLIENT_SECRET_BASIC

以上により、最小限の構成が完成しました。

5. API に接続

構成した環境が正しく動作するかどうか、Authlete の /auth/authorization API を用いて確認します。

/auth/authorization API 呼出

認可サーバーの立場になり、この API にリクエストしてみましょう。

curl コマンドを以下のように実行します(メッセージ番号 4)。なお、API Key, API Secret, Client ID は、本チュートリアルの過程にて生成された値に置き換えてください。

curl -s -X POST https://api.authlete.com/api/auth/authorization \
-u '<API Key e.g. 10723797812772>:<API Secret e.g. ekYoYTI84qZcpe6bXGzDwduQ1fGBYxJT8K8Tnwd7poc>' \
-H 'Content-Type: application/json' \
-d '{ "parameters": "redirect_uri=https://client.example.org/cb/example.com&response_type=code&client_id=<Client ID e.g. 12800697055611>" }'

Windows 10 の PowerShell から curl.exe コマンドを用いる場合には、以下のようになります。curl ではなく curl.exe とすること、" をエスケープすること、行の区切りに ` を用いることにご注意ください。(メッセージ番号 4)。 なお、API Key, API Secret, Client ID は、本チュートリアルの過程にて生成された値に置き換えてください。

curl.exe -s -X POST https://api.authlete.com/api/auth/authorization `
-u '<API Key e.g. 10723797812772>:<API Secret e.g. ekYoYTI84qZcpe6bXGzDwduQ1fGBYxJT8K8Tnwd7poc>' `
-H 'Content-Type: application/json' `
-d '{\"parameters\" : \"redirect_uri=https://client.example.org/cb/example.com&response_type=code&client_id=<Client ID e.g. 12800697055611>\"}'

リクエストが適切な場合、Authlete から以下のようなレスポンス(見やすさのため改行し一部省略)が返却されます。

{
   "resultMessage" : "[A004001] Authlete has successfully issued a ticket to the service (API Key = 10723797812772) for the authorization request from the client (ID = 12800697055611). [response_type=code, openid=false]",
   "type" : "authorizationResponse",
   "resultCode" : "A004001",
   "client" : { [...] },
   "ticket" : "bi2Kxe2WW5mK_GZ_fDFOpK1bnY6xTy40Ap_8nxf-7AU",
   "action" : "INTERACTION",
   [...]
   "service" : {
      [...]
      "supportedClaims" : [
         [...]
      ],
      "supportedScopes" : [
         [...]
      ],
   }
}

まとめ

本チュートリアルでは、新規登録から Authlete サービス作成までの手順を確認しました。

次のステップ

以下の関連記事をチェックし、OAuth/OIDC サーバーの実装と Authlete サービスの設定を行いましょう。