Skip to main content
このページは Authlete 3.0 用です。2.x では API 認証(2.x) をご覧ください。2.x では Bearer トークンではなく API キーと API シークレット(HTTP Basic 認証)を使用します。

API 認証

すべての API エンドポイントは Bearer トークン認証で保護されています。リクエストごとにアクセストークンを含める必要があります。
Authlete では 2 種類のアクセストークンを利用できます。サービスアクセストークン(単一のサービスにスコープ)と組織トークン(組織全体にスコープ)です。以下で取得方法と使い分けを説明します。

アクセストークンの取得

サービスアクセストークン

単一のサービス(1 つの認可サーバーインスタンス)にスコープされます。Core API(認可・トークン・イントロスペクション)や、そのサービスのクライアント・設定の管理に使用します。 サービスアクセストークンの取得手順
  1. Authlete コンソールにログインする。
  2. 対象のサービスが属する組織を開き、サービスを開いてサービス概要を表示する。
  3. サービス設定クライアントを新規作成 の隣)をクリックする。 Authlete コンソールのサービス概要ページ。「サービス設定」ボタンが赤枠で示されている
  4. 一般 タブで サービスアクセストークン までスクロールし、トークンを作成 をクリックする。 一般タブのサービスアクセストークンのセクション。「トークンを作成」ボタンと、権限列を含むトークン一覧が表示されている
  5. ダイアログでトークン名を入力し、権限を選択する。プリセット(認可サーバー=use_service、リソースサーバー=use_introspection など)から選ぶか、個別に指定する。詳細は下記の権限を参照。 サービスアクセストークンの追加ダイアログ。トークン名の入力欄と、認可サーバー(use_service)やリソースサーバー(use_introspection)などの権限プリセットが表示されている
  6. トークンを作成 をクリックして生成し、表示されたトークンをすぐにコピーする — 表示は一度だけです。環境変数やシークレットマネージャーなど、安全な場所に保存する。
そのサービス向けの Authlete API を呼び出す際は、Authorization: Bearer <token> ヘッダーにこのトークンを含めてください。

組織トークン

組織全体にスコープされます。組織トークンは最も広いアクセスを持ち、適切な権限があれば組織内の任意のサービスに対してあらゆる API(Core API を含む)を呼び出せるほか、サービスの作成や組織監査ログの参照といった組織レベルの操作も行えます。通常は、組織全体の管理や、複数サービスにまたがる自動化(CI/CD・Terraform など)で使用します。 組織トークンの取得手順
  1. Authlete コンソールにログインする。
  2. トークンを作成する組織を開く(まだなければ先に作成する)。
  3. サイドバーの 組織設定 を開く。
  4. 一般 タブで 組織アクセストークン までスクロールし、トークンを作成 をクリックする。 一般タブの組織アクセストークンのセクション。「トークンを作成」ボタンと、権限列を含むトークン一覧が表示されている
  5. ダイアログでトークン名を入力し、必要な組織レベルの権限を選択する。たとえば CI/CD のプロビジョニングには管理者(デフォルト)プリセットcreate_servicemodify_serviceview_audit_log)、監査ログの参照のみなら view_audit_log を選ぶ。詳細は下記の権限を参照。 組織アクセストークンの追加ダイアログ。トークン名の入力欄と、管理者(デフォルト)や監査ログ閲覧者などの組織レベルの権限プリセットが表示されている
  6. トークンを作成 をクリックして生成し、表示されたトークンをすぐにコピーする — 表示は一度だけです。安全に保管する。
組織レベルのアクセスが必要な Authlete API を呼び出す際は、Authorization: Bearer <token> ヘッダーにこのトークンを含めてください。
重要: トークンは、作成したアカウントの権限を引き継ぎます。サービストークンはそのサービスにのみアクセスでき、組織トークンは組織内のすべてのサービスにアクセスできます。アプリケーションに必要なトークン種別と権限を選んでください。

トークンの使い分け

最小権限(least privilege)の考え方に基づき、用途ごとに次のような使い分けを推奨します。用途を満たす範囲で最も狭いトークンを選んでください。 Core API の呼び出しには、サービスアクセストークンを推奨します。アクセス範囲が単一サービスに限定されるためで、組織トークンが漏洩すると、その影響が組織内のすべてのサービスに及びます。作業が本当に複数サービスにまたがる場合や、組織レベルの操作が必要な場合に組織トークンを使用してください。

権限

どちらのトークン種別を選んでも、トークンはきめ細かい権限(fine-grained permissions)を持ち、呼び出せる Authlete API はこの権限で決まります。たとえば Core API のみを呼び出す認可サーバーには use_service、リソースサーバーには use_introspection、プロビジョニングには create_client を使います。権限はトークン作成時に選択するため、ワークロードに必要な分だけを付与してください(最小権限)。 権限の全一覧と、各権限で呼び出せる API については、開発者ガイドの Service Access Tokens を参照してください。

トークンのセキュリティのベストプラクティス

  • トークンをバージョン管理にコミットしない — 環境変数やシークレットマネージャー(AWS Secrets Manager、HashiCorp Vault など)に保存する。
  • 定期的にローテーションする — 新しいトークンを発行し、古いトークンはコンソールから無効化する。
  • 必要最小限の権限を付与する — トークン作成時にアプリケーションに必要な権限だけをリクエストする。
  • 未使用のトークンは無効化する — 使わなくなったトークンはコンソールから削除する。

動作確認

次の API 呼び出しでトークンが有効か確認できます。
サービススコープのエンドポイントにはサービスアクセストークン、組織スコープのエンドポイントには組織トークンを使用してください。リージョンが異なる場合は、us.authlete.com を該当するクラスターのホスト(例:eu.authlete.comjp.authlete.com)に置き換えてください。

次のステップ