SCIMでのユーザー・プロビジョニング
クロスドメイン・アイデンティティ管理システム(SCIM)は、ユーザー・アカウントの自動プロビジョニングの業界標準です。これは、Retoolなどの他のアプリケーションでユーザー・アカウントを自動的に作成、更新、または非アクティブにできるため、会社でOktaやActive DirectoryなどのサードパーティSSOプロバイダーを使用して従業員の認証を管理している場合に役立ちます。
この機能を使用するには、Retoolがバージョン2.32.1以上である必要があります。
SCIMでのサーバー認証
SCIMの動作を説明します。例えば、アプリケーションとしてRetoolを自分のSSOプロバイダーに追加したとします。そのアプリケーションをユーザーに割り当てると、Retool内のアカウントが自動的に作成されます。これは、SSOプロバイダーがRetoolに対してAPIリクエストを実行し、Johnの新規アカウントを作成するようRetoolに指示するためです。
アカウントを誰も作成できないようにするには、RetoolでBearer Token認証スキームが使用されている必要があります。つまり、Retoolと自分のSSOプロバイダーのみが知っているシークレットを定義する必要があるということです。これを行うには、以下の新しい環境変数を自分のRetool環境に追加します。
SCIM_AUTH_TOKEN=A_SECRET_TOKEN
シークレットは10文字以上である必要があります
Retoolによって使用可能になるSCIM APIエンドポイントは非常に機密性が高いため、慎重に保護する必要があります。誰も推測できない長いセキュアなシークレット・トークンを使用してください。
その環境変数を定義した後は、 https://yourRetoolAppDomain/api/scim/v2/Schemas を開いてそれをテストできます。そこでは、次のような特殊なエラーが表示されます。
{"detail":"Not Found","schemas":["urn:ietf:params:scim:api:messages:2.0:Error"]}
その設定が完了すると、ヘッダーAuthorization: Bearer YOUR_SECRET_TOKEN
があるRetoolのSCIM APIへのリクエストのみが受け入れられるようになります。
Okta固有のガイド
サポートされている機能
- Create Users: Okta内の新規ユーザーまたは既存ユーザーがRetoolに新規ユーザーとしてプッシュされます。
- Update User Attributes: Okta内のユーザー・プロファイルに対する更新がRetoolにプッシュされます。
- Deactivate Users: Okta内で非アクティブにされたユーザーがRetool内で自動的に無効にされます。それらのユーザーは直ちにログアウトされ、請求可能なユーザーの数にカウントされることもなくなります。ユーザーは再度アクティブにされると、Retoolへのアクセス権を再び与えられ、以前に指定されていたすべてのアクセス制御が維持されます。
- Importing Users: Retoolで手動で作成したユーザーを、OktaにOktaユーザーとしてインポートできます。
- Group Push: Group Pushを使用すると、既存のOktaグループとそれらのメンバーシップを取得し、それらをRetoolにプッシュできます。
要件
この機能を有効にするには、Retoolアプリケーションの環境変数を構成できる必要があります。次のような新しい環境変数を作成します。
SCIM_AUTH_TOKEN=A_SECRET_TOKEN
シークレット・トークンは10文字以上である必要があります。この環境変数を変更した後は、Retoolコンテナーを再起動します。
構成手順
- Retoolアプリケーションを自分のOktaアカウントに追加します。
- 自分のRetoolドメインをYOUR.RETOOL.INSTANCE.COMという書式で入力してください。例えば、 https://YOUR.RETOOL.INSTANCE.COM/ にログインする場合は、「YOUR.RETOOL.INSTANCE.COM」のように入力します。
Retoolドメインに https:// という接頭辞を含めないでください
Okta統合では、自動的にURLにhttpsという接頭辞が付けられます。
- 追加したら、Provisioningタブに移動し、「Configure API Integration」をクリックします。
- 「Enable API integration」ボックスをオンにし、APIトークンとして「{your scim auth token}」を入力します。
- 「Test API credentials」をクリックして、接続が機能していることを確認します。
Auth Tokenに
Bearer
という接頭辞を含めないでくださいOkta統合では、自動的にトークンに
Bearer
という接頭辞が付けられます。
- 「Save」をクリックしてRetoolアプリケーションに対してプロビジョニングを有効にします。
- これで、目的のプロビジョニング機能がアクティブになります。アプリケーションのプロビジョニング設定で、「To App」の下にある「Edit」をクリックし、「Create Users」、「Update User Attributes」、および「Deactivate Users」を有効にします。「Save」をクリックして、設定内容を保存します。
以上です。これで、Retoolアプリケーションへのユーザーの割り当てを開始できるようになりました。ユーザーはRetool内で自動的に作成されます。
Group Pushの有効化
Oktaを初めて設定する場合は、Group Push、およびOktaのSCIMの残りの機能にアクセスできます。このガイドの残りの部分は読まなくても問題ありません。すでにRetoolとOktaの連携を設定してある場合、Group Pushを有効にするには、自分のアカウントを再認証する必要があります。これを行うには、以下の手順を実行します。
- 管理者として自分のOkta組織にログインします。
- Admin UIを開きます。
- 自分のRetoolアプリケーション・インスタンスを開きます。
- Provisioningタブに移動します。
- Settingsサイドバーで、Integrationをクリックします。
- Editをクリックし、Test API Credentialsをクリックします。次に、Saveをクリックします。このガイドの「構成手順」に従った場合は、自分の資格情報がすでにIntegrationセクションに含まれています。
これで、SCIMが自分のRetoolインスタンスに対して有効になりました。
既知の問題とトラブルシューティング
Retoolインスタンスがファイアウォールの後ろにある場合は、OktaのIPアドレスをホワイトリストに登録する必要があります。それにより、Oktaが、必要なAPIリクエストをRetoolに対して実行してユーザーのプロビジョニングとグループの同期を行うことができるようになります。
Updated about 3 years ago