User Manager の構成
User Manager は、Polyspace® Access のユーザー ログインの認証を管理します。ログインを認証するために、ユーザー名とパスワードが、User Manager データベースに保存されている ID の資格情報と照合されます。ID を User Manager のデータベースに追加するには、次のいずれかを行います。
社内の Lightweight Directory Access Protocol (LDAP) サーバーを User Manager に接続し、LDAP サーバーから ID をインポートする。LDAP サーバーとの接続を構成するには、組織の LDAP サーバーの User Manager への接続を参照してください。
カスタム ID を作成する。Manage Users and Groupsを参照してください。たとえば、社内の LDAP を使用できない場合や、使用しないことにした場合などに、カスタム ID を作成します。
[Cluster Dashboard] で [Configure Apps] をクリックして [Cluster Settings] に移動します。設定を変更するたびに、[Save] をクリックして [Cluster Dashboard] に戻り、変更を反映させるために [Restart Apps] をクリックします。必ず、[Save] をクリックする前に [Validate on Save] を有効にしてください。
メモ
Windows® システムでは、指定するすべてのファイルのパスがローカル ドライブを指している必要があります。
前提条件
[Cluster Admin] をインストールして起動します。Cluster Admin の構成と起動を参照してください。
User Manager の一般設定
以下の設定は、カスタム ユーザー資格情報を作成する場合にも、社内の LDAP サーバーからユーザーをインポートする場合にも必要です。
| 設定 | 説明 |
|---|---|
| Internal directory database volume | データベース フォルダーの絶対パスを指定します。このデータベースに、LDAP サーバーからインポートしたユーザーとグループ、または User Manager インターフェイスで作成したユーザーとグループに関する情報が保存されます。 既定では、このデータベースは Polyspace Access のインストール イメージを解凍したフォルダーの |
| Internal directory database username | PostgreSQL コマンドを使用して内部データベースを操作する必要がある場合は、このフィールドに指定したユーザー名を使用します。 既定のユーザー名は "UM" です。 |
| Internal directory database password | PostgreSQL コマンドを使用して内部データベースを操作する必要がある場合は、このフィールドに指定したパスワードを使用します。 このフィールドは必須です。 現在のデータベース パスワードを確認するには、次のコマンドを実行します。
データベースのパスワードを変更するには、次のようにパスワードを 2 回更新します。
オプション |
| Administrator sign-in IDs | User Manager 管理者として設定するユーザーのユーザー名をコンマ区切りリストとして入力します。カスタム ユーザー名または、社内の LDAP に含まれているユーザー名を指定できます。Create, Edit, or Remove Users and Groupsを参照してください。 メモ [Connect an LDAP directory] を有効にする場合は、このフィールドに指定するユーザー名のうちの少なくとも 1 つが、LDAP ディレクトリに含まれているか、User Manager データベース内に既に存在している必要があります。そうでなければ、User Manager インターフェイスにログインできません。 このフィールドに指定するユーザーは、Polyspace Access 管理者でもあります。Polyspace Access 管理者の詳細については、Manage Project Permissionsを参照してください。 ユーザーを Polyspace Access 管理者から外すには、次のようにします。
|
| Initial administrator password | [User Manager] インターフェイスにログインするために使用するパスワード。 [User Manager Directory Connection] 設定で [Connect an LDAP directory] を選択した場合、このフィールドは使用できません。 |
| Authentication token expiration (sec): | User Manager が認証済みユーザーに発行する署名付き JSON Web トークンの有効期間を秒単位で指定します。この有効期間により、セッションの有効期間が決まります。ユーザーが Polyspace Access にログインすると、ユーザーのライセンスがチェックアウトされ、セッションが期限切れにならないように、定期的にセッションの更新が行われます。ユーザーが明示的にログアウトするか Web ブラウザーを閉じると、セッションは終了し、ライセンスがチェックインして戻されます。ブラウザーが予期せず閉じた場合は、セッションが期限切れになるまで、ライセンスはチェックアウトされたままになります。 有効期間を設定するときには、次の点を考慮します。
この設定を使用して、ライセンスのタイムアウトを設定できます。Polyspace Access は、ライセンス マネージャーのオプション ファイル ( |
Authentication private key file: | User Manager で JSON Web トークンの署名に使用する秘密鍵 User Manager サービスでは、パスワードで保護された秘密鍵はサポートされません。秘密鍵は、 openssl genrsa -out private.pem 2048 SSL 証明書 (HTTPS プロトコルを有効にする場合に指定するもの) を生成するために使用した秘密鍵を再利用しないでください。 |
| API keys and user IDs | このフィールドに API キー値とユーザー名のペアを入力して、API キーをユーザーに割り当てます。たとえば、API キーをユーザー 5ea34345-a03b-4a20-821e-f10e45e0e863,jsmith 任意の英数字の組み合わせを API キーとしてユーザーに割り当てることができます。たとえば、API キーとして汎用一意識別子 (UUID) を生成するには、以下のコマンドを使用します。
Polyspace Access 資格情報が必要な以下のコマンドでは、API キーを使用します。
API キーを使用するときには、API キーをテキスト ファイルに保存し、 -api-key 5ea34345-a03b-4a20-821e-f10e45e0e863 polyspace-access -credentials-file credentials.txt -api-key を使用して、API キーを直接渡すこともできます。コマンドでは、API キーが、対応するユーザーのログイン資格情報として使用されます。ユーザーがパスワードを更新しても、そのユーザーの API キーを更新する必要はありません。API キーを自動化スクリプトの一部として使用する場合は、その API キーに関連付けられているユーザーが、スクリプト内のすべての操作を実行できるだけの十分な権限を持っていることを確認してください。Manage Project Permissionsを参照してください。 |
ID を作成または管理するには、Manage Users and Groupsを参照してください。
組織の LDAP サーバーの User Manager への接続
組織の LDAP サーバーを使用するには、[User Manager Directory Connection] 設定で [Connect an LDAP directory] を選択し、LDAP 設定を構成します。LDAP 管理者に連絡して、LDAP URL、LDAP ユーザー ベース、その他の LDAP 設定およびフィルターを入手します。Docker を使用している場合、Docker コンテナーはホストから DNS 設定を継承する必要があります。
Polyspace Access™ は、RSA 方式の鍵交換を使用する暗号スイートおよび 3DES 暗号スイートをサポートしていません。これらの暗号スイートには既知の脆弱性があるためです。ECDHE 方式の暗号スイートなどのセキュリティで保護された暗号スイートを使用するように LDAP サーバー構成をアップグレードしてから、LDAP サーバーを [User Manager] に接続してください。
| 設定 | 説明 |
|---|---|
| LDAP URL | 次の形式で LDAP URL を入力します。 ldap://HOST:PORT HOST は LDAP ホスト、PORT は LDAP ポート番号です。 SSL と組み合わせて LDAP サーバーを構成した場合は、次の形式で URL を入力します。 ldaps://HOST:PORT LDAP サーバーとクライアントの間の通信は暗号化されないので、SSL と組み合わせた LDAP (LDAP over SSL (LDAPS)) を構成して使用することをお勧めします。 |
| Synchronization interval (seconds) | LDAP サーバーとの User Manager データベースの同期間隔を秒単位で指定します。たとえば、LDAP サーバーと User Manager データベースを 30 分間隔で同期するには、1800 と指定します。 手動で同期するには、[User Manager] インターフェイスで [Synch With LDAP] をクリックします。 |
| LDAP username | LDAP サーバーに対する読み取り権限を持つユーザーのユーザー名。LDAP サーバーへのアクセスがパスワードで保護されていない場合、このフィールドは空白のままにします。 |
| LDAP password | LDAP サーバーに対する読み取り権限を持つユーザーのパスワード。LDAP サーバーへのアクセスがパスワードで保護されていない場合、このフィールドは空白のままにします。 パスワードは |
| Enable LDAP pagination | LDAP サーバーから結果を返す速度を制御するには、この設定を有効にします。通常、この設定を使用するのは、多数のユーザーをクエリするのに、LDAP サーバー側で、サーバーから返すエントリ数に制限が設定されている場合や、クエリを実行するクライアントのリソースが限られている場合です。 この設定を有効にする前に、以下の点を確認してください。
|
| LDAP page size | LDAP サーバーから返される 1 ページあたりの結果の件数を設定します (例: 1000)。この設定を使用できるのは、[Enable LDAP pagination] を選択した場合のみです。 |
| LDAP user base | このパラメーターは、LDAP エクスプローラー ツールを使用して取得できます。たとえば、Apache Directory Studio で LDAP サーバーに接続し、接続のプロパティを開きます。[Browser Options] で、[Fetch Base DNs] をクリックすると LDAP ベースを取得できます。 |
| LDAP user search filter | この検索フィルターは、LDAP データベースからユーザーのサブセットを取得するために使用されます。User Manager は起動時に、組織内のすべてのユーザーを読み込むのではなく、このサブセットを読み込みます。認証のために読み込むユーザー数を少なくすると、Polyspace Access のパフォーマンスが向上します。 検索フィルターは かっこを使用して、複数のフィルター式を AND (&) 節または OR (|) 節で組み合わせることができます。たとえば、 既定の検索フィルターは 検索フィルターでユーザーのサブセットが返されるかどうかを確認するには、[API keys and user IDs] フィールドに、サブセットに含まれるユーザーとダミー キーを入力し、ページ下部の [Validate Now] をクリックします。ユーザー名が見つからない場合は、警告が表示されます。たとえば、フィルターで |
LDAP user ID attribute LDAP user display name attribute LDAP user email attribute LDAP user image attribute | LDAP 管理者から指示がない限り、これらの設定はそのままにしておきます。Polyspace Access では、LDAP の電子メール属性とイメージ属性は使用されません。 |
| Enable LDAP groups | LDAP サーバー ディレクトリからユーザー グループをインポートするには、この設定を有効にします。 |
| LDAP group base | このパラメーターは、LDAP エクスプローラー ツールを使用して取得できます。たとえば、Apache Directory Studio で LDAP サーバーに接続し、インポートするグループを検索し、そのグループのプロパティを開きます。 |
| LDAP group search filter | この検索フィルターは、LDAP データベースからグループのサブセットを取得するために使用されます。User Manager は起動時に、組織内のすべてのグループを読み込むのではなく、このサブセットを読み込みます。読み込むグループの数を少なくすると、Polyspace Access のパフォーマンスが向上します。 検索フィルターは かっこを使用して、複数のフィルター式を AND (&) 節または OR (|) 節で組み合わせることができます。たとえば、 検索フィルターの詳細については、LDAP filters を参照してください。 |
LDAP group ID attribute LDAP group display name attribute LDAP group membership attribute | LDAP 管理者から指示がない限り、これらの設定はそのままにしておきます。Polyspace Access では、LDAP 表示名属性は使用されません。 |
User Manager での LDAP over SSL の構成
SSL と組み合わせて構成した LDAP (LDAPS) サーバーを使用する場合は、[Nodes] 設定の [CA File] フィールドに指定した証明書トラスト ストアに、LDAPS の SSL 証明書を追加します。これらの設定を表示するには、[Cluster Dashboard] の [Configure Nodes] をクリックします。トラスト ストア ファイルによっては、LDAP の SSL 証明書が既にトラスト ストアに含まれている場合があります。
通常、この証明書トラスト ストア ファイルは、Cluster Admin に HTTPS を構成するときに --ssl-ca-file で指定したファイルと一致します。Polyspace Access で HTTP と HTTPS のどちらの構成を使用するかを選択するを参照してください。
たとえば Linux Debian® ディストリビューションで、LDAP 証明書 ldaps_cert.pem をトラスト ストア ファイル trust_store.pem に追加するには、次のコマンドを使用します。
cat trust_store.pem ldaps_cert.pem > combined_cert.pem
combined_cert.pem ファイルを出力します。自己署名証明書を使用して HTTPS を構成した場合は、自己署名証明書に LDAP 証明書を追加してください。構成を実行するには、[Nodes] 設定の [CA File] フィールドに combined_cert.pem のパスを入力し、変更を保存してからダッシュボードに戻り、アプリを再起動します。
HTTPS を使用して Cluster Admin を構成しなかった場合は、[CA File] フィールドに LDAP の SSL 証明書のパスを指定します。
シングル サインオン (SSO) を使用した認証の構成
Polyspace Access では、Security Assertion Markup Language (SAML) ID プロバイダー (IdP) を使用して認証を構成できます。SAML の詳細については、OASIS SAML Wiki を参照してください。
SAML 設定に加えて LDAP 設定も入力する必要があります。LDAP 設定と SAML 設定を入力すると、LDAP ID、SAML 設定、Polyspace Access "User Manager" が同期されます。また、ユーザーに権限を割り当てる機能、および結果のレビューをユーザーに割り当てる機能も提供されます。LDAP 設定の詳細については、組織の LDAP サーバーの User Manager への接続を参照してください。
SAML の構成には以下の前提条件があります。
Polyspace Access がインストールされている。Web レビューのための Polyspace Access のインストールを参照してください。
組織の IdP が SAML プロトコルに従っている。
IdP へのアクセス権がある。アクセス権を取得するには、ID 管理者にお問い合わせください。
IdP が SAML メタデータのエンドポイントをホストしている。複数の設定で、このメタデータに含まれている情報の入力が必要です。
組織の SAML 設定を構成するには、まず [Authentication type] リストから [SAML] を選択してから、以下の設定を指定します。
| 設定 | 説明 |
|---|---|
| SAML IDP metadata | SP-initiated プロファイルまたは IdP-initiated プロファイルの必要な SAML メタデータの URL。 |
| SAML relying party | SAML ID プロバイダーと統合するサーバーのホスト名。この値は通常、IdP で使用される、DNS エントリに記載されたホスト名です。これは、IdP メタデータの |
| SAML CORS domains | クロスオリジン通信で必要なドメインの文字列配列。セットアップによっては、この設定は必要ない場合があります。 |
| SAML user ID attribute | IdP のユーザー名またはユーザー ID 属性。サーバーがライセンスをチェックアウトすると、この属性の値がライセンス サーバー ログに表示されます。 |
| SAML user display name attribute | IdP のユーザー表示名属性。この属性の値は Polyspace Access ユーザー インターフェイスに表示されます。アサーションによって、より適した別のフィールド ("uname" など) が渡されると、このフィールドは |
| SAML binding attribute | ID プロバイダーに認証リクエストを送信するためのバインディング メソッド。 HTTP Redirect メソッドではリクエスト データを URL のクエリ パラメーターとして送信します。一方、HTTP POST メソッドでは、リクエスト本文でデータをより安全に送信します。 |
| SAML destination regex attribute | Polyspace ドメインのドメインおよびポートに一致する正規表現パターンを追加します。たとえば、以下のように指定すると、すべてのリダイレクトが ^https://www.myAccessDomain.com:9443)/.*$ この設定は、SSO 構成のテスト時に無効な宛先 URL エラーが発生した場合に使用します。 |
SAML および LDAP の設定をすべて構成したら、変更を保存して Cluster Dashboard に戻ります。[User Manager] リンクをクリックして、変更後の構成が機能していることを確認します。正しく構成されていれば、SSO プロセスが起動し、IdP にサインインするよう求められます。サインインすると、IdP によって Polyspace Access の "User Manger" にリダイレクトされます。