TiDBダッシュボードのSSOを構成する
TiDBダッシュボードは、SQLベースのOIDCサインオン(SSO)をサポートしています。TiDBダッシュボードのSSO機能を有効にすると、設定されたSSOサービスがサインイン認証に使用され、SQLユーザーのパスワードを入力せずにTiDBダッシュボードにアクセスできるようになります。
OIDC SSO を構成する
SSOを有効にする
TiDB ダッシュボードにサインインします。
左側のサイドバーにあるユーザー名をクリックして、設定ページにアクセスします。
[シングル サインオン]セクションで、 [有効にする] を選択して、TiDB ダッシュボードにサインインするときに SSO を使用します。
注記:
アカウントに
SYSTEM_VARIABLES_ADMIN権限がない場合、 「TiDBダッシュボードへのサインイン時にSSOを有効にする」オプションは無効になります。権限の詳細については、 TiDBダッシュボードのユーザー管理ご覧ください。フォームのOIDC クライアント IDとOIDC 検出 URLフィールドに入力します。
通常、SSO サービス プロバイダーから次の 2 つのフィールドを取得できます。
- OIDC クライアント ID は、OIDC トークン発行者とも呼ばれます。
- OIDC Discovery URL は、OIDC Token Audience とも呼ばれます。
「偽装の承認」をクリックし、SQL パスワードを入力します。
TiDB ダッシュボードはこの SQL パスワードを保存し、SSO サインインが完了した後に通常の SQL サインインを偽装するために使用します。

注記:
入力したパスワードは暗号化されて保存されます。SQLユーザーのパスワードを変更すると、SSOサインインが失敗します。その場合は、パスワードを再入力することでSSOを復旧できます。
[承認して保存]をクリックします。

設定を保存するには、 [更新] (Update) をクリックします。

TiDB ダッシュボードで SSO サインインが有効になりました。
注記:
セキュリティ上の理由から、一部のSSOサービスでは、信頼できるサインインおよびサインアウトURIなど、SSOサービスに追加の設定が必要です。詳細については、SSOサービスのドキュメントを参照してください。
SSOを無効にする
SSO を無効にすると、保存されている SQL パスワードが完全に消去されます。
TiDB ダッシュボードにサインインします。
左側のサイドバーにあるユーザー名をクリックして、設定ページにアクセスします。
[シングル サインオン]セクションで、 [TiDB ダッシュボードにサインインするときに SSO を使用する] の選択を解除します。
設定を保存するには、 [更新] (Update) をクリックします。

パスワード変更後にパスワードを再入力してください
SQLユーザーのパスワードを変更すると、SSOサインインは失敗します。この場合、SQLパスワードを再入力することでSSOサインインを再開できます。
TiDB ダッシュボードにサインインします。
左側のサイドバーにあるユーザー名をクリックして、設定ページにアクセスします。
[シングル サインオン]セクションで、 [偽装の承認]をクリックし、更新された SQL パスワードを入力します。

[承認して保存]をクリックします。
SSO経由でサインイン
TiDB ダッシュボードに SSO が設定されると、次の手順に従って SSO 経由でサインインできます。
TiDB ダッシュボードのサインイン ページで、 [会社アカウントでサインイン] をクリックします。

SSO サービスが設定されたシステムにサインインします。
サインインを完了するために、TiDB ダッシュボードにリダイレクトされます。
例 1: TiDB ダッシュボードの SSO サインインに Okta を使用する
オクタはOIDC SSOアイデンティティサービスであり、TiDBダッシュボードのSSO機能と互換性があります。以下の手順では、OktaをTiDBダッシュボードのSSOプロバイダーとして使用できるように、OktaとTiDBダッシュボードを設定する方法を説明します。
ステップ1: Oktaを構成する
まず、SSO を統合するための Okta アプリケーション統合を作成します。
Okta 管理サイトにアクセスします。
左側のサイドバーから「アプリケーション」 > 「アプリケーション」に移動します。
「アプリ統合の作成」をクリックします。

ポップアップされたダイアログで、サインイン方法でOIDC - OpenID Connectを選択します。
アプリケーションの種類でシングルページ アプリケーションを選択します。
「次へ」ボタンをクリックします。

サインイン リダイレクト URI を次のように入力します。
http://DASHBOARD_IP:PORT/dashboard/?sso_callback=1DASHBOARD_IP:PORT、ブラウザで TiDB ダッシュボードにアクセスするために使用する実際のドメイン (または IP アドレス) とポートに置き換えます。サインアウトリダイレクト URI を次のように入力します。
http://DASHBOARD_IP:PORT/dashboard/同様に、
DASHBOARD_IP:PORT実際のドメイン (または IP アドレス) とポートに置き換えます。
[割り当て]フィールドで、組織内のどのタイプのユーザーに SSO サインインを許可するかを構成し、 [保存]をクリックして構成を保存します。

ステップ2: OIDC情報を取得し、TiDBダッシュボードに入力します
Okta で作成したアプリケーション統合で、 [サインオン]をクリックします。

OpenID Connect ID トークンセクションからIssuer フィールドとAudienceフィールドの値をコピーします。

TiDBダッシュボードの設定ページを開き、 OIDCクライアントIDに前の手順で取得したIssuerを入力し、 OIDCディスカバリURLにAudienceを入力します。その後、認証を完了し、設定を保存します。例:

これで、TiDB ダッシュボードはサインインに Okta SSO を使用するように構成されました。
例2: TiDBダッシュボードのSSOサインインにAuth0を使用する
Oktaと同様に、 オーソ0もOIDC SSOアイデンティティサービスを提供します。以下の手順では、Auth0をTiDBダッシュボードのSSOプロバイダーとして使用できるように、Auth0とTiDBダッシュボードを設定する方法について説明します。
ステップ1: Auth0を構成する
Auth0 管理サイトにアクセスします。
左側のサイドバーで「アプリケーション」 > 「アプリケーション」に移動します。
「アプリ統合の作成」をクリックします。

ポップアップダイアログで、名前を入力します(例:「TiDBダッシュボード」)。アプリケーションの種類を選択で「シングルページWebアプリケーション」を選択します。 「作成」をクリックします。
[設定]をクリックします。

許可されたコールバック URLを次のように入力します。
http://DASHBOARD_IP:PORT/dashboard/?sso_callback=1DASHBOARD_IP:PORT、ブラウザで TiDB ダッシュボードにアクセスするために使用する実際のドメイン (または IP アドレス) とポートに置き換えます。許可されたログアウト URLを次のように入力します。
http://DASHBOARD_IP:PORT/dashboard/同様に、
DASHBOARD_IP:PORT実際のドメイン (または IP アドレス) とポートに置き換えます。
その他の設定はデフォルト値のままにして、 「変更を保存」をクリックします。
ステップ2: OIDC情報を取得し、TiDBダッシュボードに入力します
Auth0 の[設定]タブの基本情報のクライアント**ID を、TiDB ダッシュボードの OIDC クライアント**ID に入力します。
OIDC検出URLに、ドメインフィールドの値の先頭に
https://、末尾に/入力します(例:https://example.us.auth0.com/)。認証を完了し、設定を保存します。
これで、TiDB ダッシュボードはサインインに Auth0 SSO を使用するように構成されました。
例3: TiDBダッシュボードのSSOサインインにCasdoorを使用する
キャスドア 、独自のホストに導入できるオープンソースのSSOプラットフォームです。TiDBダッシュボードのSSO機能と互換性があります。以下の手順では、CasdoorをTiDBダッシュボードのSSOプロバイダーとして使用できるように、CasdoorとTiDBダッシュボードを設定する方法について説明します。
ステップ1:Casdoorを設定する
Casdoor 管理サイトをデプロイてアクセスします。
上部のサイドバーの「アプリケーション」から移動します。
アプリケーション - 追加をクリックします

名前と表示名を入力します (例: TiDB Dashboard) 。
次のようにリダイレクト URLを追加します。
http://DASHBOARD_IP:PORT/dashboard/?sso_callback=1DASHBOARD_IP:PORT、ブラウザで TiDB ダッシュボードにアクセスするために使用する実際のドメイン (または IP アドレス) とポートに置き換えます。
その他の設定はデフォルト値のままにして、 「保存して終了」をクリックします。
ページに表示されているクライアント IDを保存します。
ステップ2: OIDC情報を取得し、TiDBダッシュボードに入力します
前の手順で保存したクライアント IDを TiDB ダッシュボードのOIDC クライアント IDに入力します。
OIDC検出URLに、ドメインフィールドの値の先頭に
https://、末尾に/入力します(例:https://casdoor.example.com/)。認証を完了し、設定を保存します。
これで、TiDB ダッシュボードはサインインに Casdoor SSO を使用するように構成されました。