メインコンテンツまでスキップ

OAuth Authorization Server

OAuth Authorization Serverでは、Kuroco自身をOAuth 2.0 / OpenID Connectの認可サーバー(Authorization Server)として動作させるための設定を管理できます。外部のOAuthクライアント(MCPクライアントを含む)に対して、認可コードやアクセストークンを発行できます。1つのOAuth Authorization Server設定に対して、複数のOAuth Authorization Serverクライアントを登録して利用します。

OAuth Authorization Server一覧

確認方法

[外部システム連携] -> [OAuth Authorization Server]をクリックします。

Image from Gyazo

項目説明

Image from Gyazo

項目説明
有効OAuth Authorization Serverの有効状態を確認できます。
Image (fetched from Gyazo):有効
Image (fetched from Gyazo):無効
名前OAuth Authorization Serverの名前を表示します。クリックすると編集画面に移動します。
用途この認可サーバーの用途(ターゲットドメイン)を表示します。API / Management / AdminMCP のいずれかです。
OAuth Authorization Server クライアント[クライアントを管理]をクリックすると、その認可サーバーに紐づくクライアントの一覧画面に移動します。
更新日時最終更新日時を表示します。

一覧画面では、チェックボックスで選択した認可サーバーをまとめて有効化・無効化・削除できます。

OAuth Authorization Serverの編集

編集方法

[外部システム連携] -> [OAuth Authorization Server]をクリックします。新規に作成する場合は、一覧画面右上の[追加]をクリックします。既存の設定を編集する場合は、一覧画面から編集したい認可サーバーの[名前]をクリックします。

Image from Gyazo

項目説明

OAuth Authorization Server編集

項目説明
名前OAuth Authorization Serverの名前を入力します。(必須)
用途この認可サーバーの用途を選択します。
API:メンバー向けの認可サーバーです。
Management:管理者向けの認可サーバーです。
AdminMCP:Admin MCPリソース専用の管理者向け認可サーバーです。
(必須)
※用途は作成後には変更できません。編集画面では[変更不可]と表示されます。用途を変更すると、保存済みの許可スコープ・グラントタイプ・リソースの紐づけと不整合になるためです。
Client ID Metadata Documents(URL形式クライアントID)有効にすると、HTTPSのURLをclient_idとして受け付け、そのURLからクライアントメタデータを取得します。メタデータ(アプリ名等)はクライアント側の自己申告であり検証されません。同意画面ではURLが信頼の基準として表示されます。
対応するグラントタイプこの認可サーバーが対応するOAuthグラントタイプをチェックで選択します(1つ以上必須)。
authorization_code:認可コードフロー。
refresh_token:リフレッシュトークンによる再発行。
client_credentials:クライアント認証情報によるトークン発行。
初期状態ではauthorization_coderefresh_tokenが選択されています。
許可するスコープこの認可サーバーが発行を許可するスコープ(上限)をチェックで選択します。選択したスコープだけをクライアントに割り当て・トークンに付与できます。利用するスコープを必ず選択してください(未選択のままだとクライアントにスコープを割り当てられません)。選択できるスコープは用途によって異なります(スコープ一覧を参照)。
OAuth Authorization Server クライアント[クライアントを管理]をクリックすると、この認可サーバーに紐づくクライアントの一覧画面に移動します。(保存済みの認可サーバーでのみ表示されます)
APIエンドポイントこの認可サーバーにMCPサーバーが紐づいているAPIエンドポイントの一覧を表示します。各APIをクリックするとAPIの編集画面に移動します。(用途がAPIかつ保存済みの認可サーバーでのみ表示されます)
アクセストークン有効期間アクセストークンの有効期間を秒単位で入力します(最小60秒)。初期値は3600秒です。
リフレッシュトークン有効期間リフレッシュトークンの有効期間を秒単位で入力します(最小60秒)。初期値は2592000秒です。
認可コード有効期間認可コードの有効期間を秒単位で入力します(最小10秒)。初期値は60秒です。
並び順一覧での表示順を数値で入力します。
有効チェックを入れると、この設定が有効になります。
ログインページURL用途がAPIの場合に、ログインに用いるページのパスを入力します(例: /login/)。(用途がAPIの場合は必須)
用途がManagement / AdminMCPの場合は、この項目は表示されず、管理画面のログインURLが固定で使用されます。
発行元 (Issuer) URLこの認可サーバーのIssuer URLを表示します(読み取り専用)。保存済みの認可サーバーでのみ表示されます。
メタデータURLこの認可サーバーのメタデータ(Authorization Server Metadata)のURLを表示します(読み取り専用)。保存済みの認可サーバーでのみ表示されます。

各ボタン

Image from Gyazo

項目説明
更新する入力した内容を保存します。
削除する表示しているOAuth Authorization Serverの設定を削除します。

スコープ一覧

「許可するスコープ」で選択できるスコープは、用途(ターゲットドメイン)によって異なります。

用途選択できるスコープ
APIサインイン用スコープ(openid / profile / email)と、API 読み取り(api:read)、API 書き込み(api:write
Managementサインイン用スコープ(openid / profile / email)のみ
AdminMCPサインイン用スコープに加えて、Admin MCPの権限レベルとリソース(モジュール・コンテンツ)のスコープ

Admin MCPの権限レベル

用途がAdminMCPの場合、Admin MCPの権限レベルを次から1つ選択します。

権限レベルスコープ説明
読み取り専用mcp:tools.read読み取りツールを利用できます。
読み書きmcp:tools.write読み書きツールを利用できます。
全権限mcp:adminトークン発行などすべての操作を含み、コンテンツ・モジュールの制限も無視されます。

「読み取り専用」または「読み書き」を選択した場合は、対象とするコンテンツまたはモジュールを1つ以上選択してください。すべてを対象にする場合は「すべてのモジュール(今後追加されるものを含む)」または「すべてのコンテンツ(今後追加されるものを含む)」を選択します。「全権限」を選択した場合は、コンテンツ・モジュールの制限が無視されるため、これらの選択項目は表示されません。

注意

用途がManagementおよびAdminMCPの認可サーバーは、サイト内で有効にできるのは1つだけです。それぞれのリソースサーバーは、有効な設定を1つだけ解決するためです。(APIは、MCPを有効にした各APIが個別に1つの認可サーバーに紐づくため、複数の有効な認可サーバーを持てます。)

OpenID Connect(サインイン情報の連携)

サインイン用スコープ(openid / profile / email)を付与すると、この認可サーバーはOpenID Connectの認可サーバーとして、メンバーのサインイン情報(claim)をクライアントに連携します。付与されたスコープにopenidが含まれる場合にのみ、id_tokenの発行とuserinfoエンドポイントでのclaim取得が有効になります。id_token・userinfoエンドポイント・JWKSエンドポイントなどの詳細はOAuth Authorization ServerのOpenID Connect対応を参照してください。

OAuth Authorization Server クライアント

1つのOAuth Authorization Serverに対して、複数のクライアントを登録できます。クライアントは、OAuth Authorization ServerのクライアントID・シークレット・リダイレクトURI・スコープなどを保持します。

OAuth Authorization Server クライアント一覧

確認方法

OAuth Authorization Server一覧画面、またはOAuth Authorization Server編集画面から[クライアントを管理]をクリックします。

Image from Gyazo

項目説明

項目説明
有効クライアントの有効状態を確認できます。
Image (fetched from Gyazo):有効
Image (fetched from Gyazo):無効
クライアント名クライアントの名前を表示します。クリックすると編集画面に移動します。
クライアントIDクライアントIDを表示します。
トークンエンドポイント認証方式クライアントのトークンエンドポイント認証方式を表示します。
更新日時最終更新日時を表示します。

OAuth Authorization Server クライアントの編集

編集方法

クライアント一覧画面右上の[追加]をクリックすると、新しいクライアントを作成できます。既存のクライアントを編集する場合は、一覧画面から[クライアント名]をクリックします。

Image from Gyazo

項目説明

項目説明
クライアント名クライアントの名前を入力します。(必須)
クライアントID保存後に発行されるクライアントIDを表示します(読み取り専用)。
有効チェックを入れると、このクライアントが有効になります。
トークンエンドポイント認証方式クライアントの認証方式を選択します。(必須)
none:パブリッククライアント(PKCEのみ)。
client_secret_basic:Basic認証ヘッダーでクライアントシークレットを送信します。
client_secret_post:リクエストボディでクライアントシークレットを送信します。
クライアントシークレット[保存時にクライアントシークレットを再生成する]にチェックを入れると、保存時に新しいシークレットを生成し、画面に1度だけ表示します。以前のシークレットは無効化されます。(既存クライアントの編集時のみ表示されます)
リダイレクトURI認可後にリダイレクトを許可するURIを、1行に1つ入力します。(必須)
MCPクライアントの代表的なコールバックURLは次のとおりです。
https://claude.ai/api/mcp/auth_callback
https://chatgpt.com/connector_platform_oauth_redirect
サービスメンバーIDclient_credentialsでアクセストークンを発行するときに、トークンの主体として使用するメンバーIDです。保存時にトークン生成と同じ権限チェックを行います。(親の認可サーバーがclient_credentialsを許可している場合のみ表示されます)
許可するスコープ左のタブで[対応するグラントタイプ]と各スコープグループを切り替えて設定します。
[対応するグラントタイプ]では、このクライアントが利用するグラントタイプをチェックで選択します(1つ以上必須)。親の認可サーバーで無効化されているグラントタイプは、[認可サーバーレベルで無効化されています]と表示され選択できません。
各スコープグループでは、このクライアントに割り当てるスコープを選択します。選択できるスコープは、親の認可サーバーの[許可するスコープ]で許可された範囲に限られます。

保存後に新しいクライアントシークレットが生成された場合は、画面上部に次のメッセージとともにシークレットが表示されます。

このクライアントシークレットは一度だけ表示されます。今すぐコピーして安全に保管してください — 後から取得することはできません。

Image from Gyazo

注意

クライアントシークレットは、保存時に1度だけ表示されます。後から取得することはできないため、表示された時点でコピーして安全に保管してください。

注意

API/MCP用のクライアントには、アクセス権を持つスコープを1つ以上指定してください。サインイン用スコープ(openid など)のみではAPI/MCPを利用できません。

注意点

  • 用途(ターゲットドメイン)は認可サーバーの作成後には変更できません。用途を変更したい場合は、新しい認可サーバーを作成してください。
  • ManagementおよびAdminMCPの認可サーバーは、サイト内で同時に有効にできるのは1つだけです。
  • クライアントに割り当てられるスコープ・グラントタイプは、親の認可サーバーで許可された範囲が上限になります。認可サーバー側で許可していないスコープ・グラントタイプは、クライアント側で選択できません。
  • クライアントシークレットは保存時に1度だけ表示され、後から取得することはできません。

関連ドキュメント


サポート

お探しのページは見つかりましたか?解決しない場合は、問い合わせフォームからお問い合わせいただくか、Slackコミュニティにご参加ください。