SaltStack Config 用の新しい SAML 構成を作成する前に、すべての手順を読んで構成プロセスを理解してください。
構成前の手順
SaltStack Config で SAML を構成する前に、次の手順に従います。
- SAML ID プロバイダ (IdP) をインストールし、それが実行されていることを確認します。このトピックでは、IdP のインストール手順は一切扱いません。サポートが必要な場合は、IdP 管理者に確認してください。
- IdP によって提供される認証情報と構成データにアクセスできることを確認します。さらに、次のセクションであるサービス プロバイダ証明書の作成を参照してください。
サービス プロバイダ証明書の作成
IdP で承認済みのサービス プロバイダとして SaltStack Config を追加するには、証明書を生成する必要があります。SaltStack Config サービス プロバイダには、RSA キー ペアが必要です。SaltStack Config 向けに SAML を構成するときは、プライベート キーとパブリック キーの値を数か所に入力します。
証明書を作成するには、次の手順に従います。
- 次のコマンドを使用して、cert.perm という名前でプライベート キーを生成します。
openssl genrsa -out cert.pem 2048
- 前の手順で作成したプライベート キーに関連付けられるパブリック キーを作成します。次のコマンドでプロセスを実行できます。
openssl req -new -x509 -key cert.pem -out cert.pub -days 1825
- このコマンドを実行すると、必要に応じて次のような情報が求められます。
- 国名
- 都道府県名
- 市町村名
- 組織名または会社名
- 組織単位名
- サーバ ホスト名
- メール アドレス
これにより、SAML 構成で使用されるパブリック キーとプライベート キーのペアが作成されます。これらのパブリック キーとプライベート キーのペアを記録し、残りの構成プロセスを進めるときにすぐに参照できるようにしてください。次のセクションに進んで、SAML 構成の設定に関する手順を実行します。
SAML 構成の設定
このセクションの手順を実行する前に、サービス プロバイダとしての SaltStack Config 向けにパブリック キーとプライベートが生成済みであることを確認してください。詳細な手順については、サービス プロバイダ証明書の作成を参照してください。
組織で選択された IdP を使用して SaltStack Config で SAML SSO を設定するには、次の手順に従います。
- サイド メニューで [管理] >[認証] の順にクリックします。
- [作成] をクリックします。
- [構成タイプ] メニューの [SAML] を選択します。
ワークスペースに、SAML 構成タイプでサポートされる設定が表示されます。
- [設定] タブの次のフィールドに、SaltStack Config インストールに関する情報を入力します。
- 名前
- ベース URI
- エンティティ ID
- 会社名
- 表示名
- Web サイト
注: これらのフィールドの説明については、 SAML の情報フィールドを参照してください。 - [プライベート キー] フィールドには、SaltStack Config 用のサービス プロバイダ証明書を作成したときに生成したプライベート キーをコピーします。詳細については、サービス プロバイダ証明書の作成を参照してください。
- [パブリック キー] フィールドには、SaltStack Config 用のサービス プロバイダ証明書を作成したときに生成したパブリック キーをコピーします。
- 次のフィールドに、関連する連絡先情報を入力します。
- 技術者の連絡先
- サポートの連絡先
- [プロバイダ情報] セクションで、ID プロバイダ (IdP) に関するメタデータを次のフィールドに入力します。
- エンティティ ID
- ユーザー ID
- E メール
- Username
- URL
- x509 証明書
注: 一般的な ID プロバイダとして、ADFS、Azure AD、Google SAML などがあります。これらのフィールドに、IdP から提供された情報を入力します。これらのフィールドの詳細については、 SAML の情報フィールドを参照してください。 - オプション:SaltStack Config が SAML 属性ステートメントをユーザー プロファイルと照合してチェックするように指定するには、[属性ステートメント チェック] のボックスをオンにします。このオプションはデフォルトでオンになっています。
- [保存] をクリックします。
これで、SaltStack Config 向けの SAML 構成が完了しました。次のセクションに進んで、サービス プロバイダ情報を使用した IdP の構成に関する手順を実行します。
サービス プロバイダ情報を使用した IdP の構成
このセクションの手順を実行する前に、まず SaltStack Config で SAML を構成済みであることを確認してください。詳細については、SAML 構成の設定に関する手順を参照してください。
SAML 構成を実行するために、ID プロバイダは次の 2 つの重要なデータを必要とします。
- AssertionCustomerService URL
- SaltStack Config 向けにサービス プロバイダ証明書を作成したときに生成したパブリック (x509) 証明書(パブリック キー)。詳細については、サービス プロバイダ証明書の作成を参照してください。
AssertionCustomerService URL は、ID アサーションの確立時にサービス プロバイダが SAML メッセージとアーティファクトを受け入れるために使用する Web アドレスです。ここでは、SaltStack Config がサービス プロバイダです。
AssertionCustomerService URL の一般的な形式の例を次に示します。https://<your-sse-hostname>/auth/complete/saml
このデータを IdP に提供したら、次のセクションに進んで、属性マッピングの作成に関する手順を実行します。
属性マッピングの作成
SaltStack Config は、受け取った SAML アサーションからユーザーに関する情報を取得します。そのため、IdP は、必要な値が追加属性として必ず送信されるようにする必要があります。これらの属性をマッピングするプロセスは、各 SAML ID プロバイダによって異なります。属性マッピングを作成する際のサポートについては、IdP のドキュメントを参照するか、管理者に確認してください。
SaltStack Config は、ユーザーに関する次の属性を定義する必要があります。
- ユーザー ID
- E メール
- Username
多くの組織では、ユーザーのメール アドレスという 1 つの属性に、この 3 つの値をマッピングします。ユーザーのメール アドレスは原則として組織全体で一意であるため、よく使用されます。
SAML での RBAC の構成
SaltStack Config では、さまざまな役割のユーザーに合わせたロールと権限の作成がサポートされています。SAML での RBAC は、API (RaaS) サーバの SaltStack Config に認証情報がネイティブに保存されるユーザーを管理する場合と同じように管理されます。[ロール] ワークスペースの詳細については、ロールと権限を参照してください。
ロールを作成すると、SAML ユーザーを追加してロールに割り当てることができます。詳細については、ユーザーの追加に関する次のセクションを参照してください。
ユーザーの追加
デフォルトでは、新しいユーザーが SaltStack Config に登録されるのは、ユーザーが SAML を使用して初めてログインに成功した後です。または、手動でユーザーを追加して SaltStack Config に事前登録することもできます。
ユーザーを手動で追加するには、次の手順に従います。
- [認証] ワークスペースで、[認証構成] リストから SAML 構成を選択して構成設定を開きます。
- 構成設定で、[ユーザー] タブをクリックします。
- [作成] ボタンをクリックします。
- [ユーザー名] フィールドに、追加するユーザーの認証情報を入力します。このユーザー名は、割り当てられた SAML ユーザー名と同一である必要があります。
注: このユーザー名が正しいことを確認してください。ユーザーが作成されると、ユーザー名を変更することはできません。
- [ロール] フィールドで、ユーザーに追加するロールを選択します。デフォルトでは、すべての新しいユーザーは [ユーザー] ロールに追加されます。詳細については、SAML での RBAC の構成を参照してください。
- [保存] をクリックします。
注: 手動で作成されたユーザーは、最初のログインを実行する前に限り削除できます。ユーザーが最初にログインした後も、このワークスペースには削除ボタンが表示されますが、機能しません。
構成のトラブルシューティングと検証
SaltStack Config で SSO を構成した後、一般的なユーザーとしてログインし、ログイン プロセスが想定どおりに動作することと、ロールと権限が正しいことを確認します。
エラーの可能性がある場合、トラブルシューティングでは次の手順に従います。
- Firefox および Chrome Web ブラウザで使用可能な SAML 追跡ツールを使用します。
/var/log/raas/raas
ログ メッセージを確認します。