集中認証サーバ(P4AUTH)
複数のHelixサーバが稼働している場合は、集中認証サーバからプロテクションとライセンスのデータを取得するようにPerforceサーバを設定することができます。 集中サーバを使用すると、すべてのサーバ上に同じユーザエントリとプロテクションエントリが存在するかどうかを確認する必要がなくなります。
集中認証サーバを使用する場合は、すべての外側のサーバのリリースレベルが集中サーバのリリースレベルと一致しているか、それよりも新しいレベルになっている必要があります。
集中認証サーバ上に存在しないユーザは、外側のサーバにも存在しないユーザとして表示されます。
組織内の任意のHelix Coreサーバを、集中認証サーバとして使用することができます。 集中認証サーバのライセンスファイルにより、外側のサーバ上での存在が許可されるライセンス済みユーザの数が管理されるため、正しいライセンスファイルを使用する必要があります。 集中認証サーバを使用するようにHelix Coreサーバを設定するには、P4AUTH
をサーバを起動する前に設定するか、サーバの起動時にコマンドラインで指定します。
Perforceサーバで集中認証サーバを使用している場合は、p4
info
コマンドの出力情報に以下の行が表示されます。
... Authorization Server: [protocol:]host:port
[protocol:]host:port
の部分は、集中認証サーバのプロトコル、ホスト、ポート番号です。 詳細については、「ホストを指定する」を参照してください。
以下の例では、central
という集中認証サーバを使用するように外側のサーバが設定されています。 この外側のサーバは、ポート1999でユーザからの要求を待機し、ユーザ、グループ、プロテクション、レビュー、ライセンスの情報については、集中サーバのデータを使用します。 また、この外側のサーバは、サーバから取得したプロテクションテーブルを、central:1666
で独自のプロテクションテーブルに結合します。
以下に例を示します。
$ p4d -a central:1666 -p 1999
Windowsでは、p4 set
-S
コマンドを使用して、以下のように外側のサーバを設定します。
C:\> p4 set -S "Outer Server" P4AUTH=central:1666
C:\> p4 set -S "Outer Server" P4PORT=1999
集中認証サーバを構成すると、外側のサーバは、以下の各コマンドを集中サーバに処理用として転送します。
コマンド | 認証サーバに転送? | 注意 |
---|---|---|
する |
ローカルのグループデータは、集中サーバから派生します。 |
|
する |
ローカルのグループデータは、集中サーバから派生します。 |
|
する |
ライセンスの制限は、集中サーバから派生します。 ライセンスのアップデートは、集中サーバに転送されます。 |
|
する |
プロパティ値は、集中サーバから派生します。 |
|
する | 例えば、2つのSwarmインスタンスが同じ認証サーバを使用している場合、一方のインスタンスを更新すると、もう一方のインスタンスも更新できます。 | |
なし |
|
|
なし |
|
|
する |
ローカルユーザのデータは、集中サーバから派生します。 |
|
する |
ローカルユーザのデータは、集中サーバから派生します。 |
|
なし |
ユーザによるローカルサーバのプロテクションテーブルの編集が許可されている場合(結合されたプロテクションテーブルとして定義されている場合)、そのプロテクションテーブルが表示されます。 |
|
する |
プロテクションは、外側のサーバのプロテクションテーブルに付加された集中サーバのプロテクションテーブルから派生します。 |
|
する |
チケットを生成するため、コマンドが集中サーバに転送されます。 |
|
する |
チケットを無効にするため、コマンドが集中サーバに転送されます。 |
制限事項と注記
- Helix Swarmは、集中認証サーバではサポートされていません。
P4AUTH
を使用するすべてのサーバは、集中認証サーバと同じUnicode設定を使用する必要があります。-
p4 configure set P4AUTH=[protocol:]server:port
コマンドを使用してP4AUTH
を設定するには、外側のサーバを再起動する必要があります。レプリカに対して
P4AUTH
を設定する必要がある場合は、次の構文を使用してください。p4 configure set ServerName#P4AUTH=[protocol:]server:port
P4AUTH
を設定した場合、オープンファイルまたはクライアントを持っているユーザが削除されても警告が表示されません。-
p4 review
コマンドとp4 reviews
コマンドを正常に機能させるには、集中サーバ上でサービスユーザ(サービスユーザが指定されていない場合は、remote
という名前のユーザ)によるリモートディポへのアクセスを有効にする必要があります。注:
remote
タイプのユーザは存在しませんが、remote
という特殊ユーザは存在します。この特殊ユーザは、リモートディポのプロテクションを定義する場合に使用されます。 - 転送されたコマンドと、信頼されている直接接続ユーザによって発行されたコマンドを認証サーバで正しく区別するには、「proxy-」という文字列を
[protocol:]host:port
定義の先頭に付加することにより、PerforceサービスでIPベースのプロテクションエントリを定義する必要があります。重要ワークステーションのIPアドレスの先頭に文字列
proxy-
を追加する前に、ブローカまたはプロキシが配置されていることを確認します。 - 転送されないコマンドのプロテクションは、外側のサーバによって適用されます。集中サーバのプロテクションテーブル内の行からプロテクションが派生している場合であっても、クライアントのプレーンIPアドレスを使用する必要があります。