Helix Core P4コマンドリファレンス (2019.1)

p4 passwd

ユーザのHelixサーバパスワードを変更します。

構文

p4 [g-opts] passwd [-O oldpassword] [-P newpassword] [user]

説明

デフォルトの場合、パスワードが設定されていないユーザレコードが作成されるため、P4USERを設定するか、グローバルオプション-uを使用することにより、すべてのHelixサーバユーザが他のユーザとして操作を行うことができます。 他のユーザによるなりすましを防ぐには、p4 passwdコマンドを使用してパスワードを設定します。

重要

チケットベースの認証を使用してセキュリティを強化することをお勧めします。 これを設定するには、セキュリティレベルを3以上にする必要があります。 『Helix Coreサーバ管理者ガイド: 基本』の「サーバセキュリティレベル」を参照してください。

チケットで認証するには、最初にp4 passwdでパスワードを設定し、次にp4 loginコマンドとp4 logoutコマンドを使用して認証を管理します。

ユーザをグループに割り当ててp4 groupのフォームでPasswordTimeout:フィールドを設定することにより、さらにセキュリティを強化することができます。 ユーザが複数のグループに属している場合、最大のPasswordTimeout値が適用されます。

セキュリティレベル0および1のHelixサーバサービスに接続するWindowsおよびOS X上のHelixサーバアプリケーションでは、p4 passwdp4 setを使用してパスワードを保存し、パスワードのMD5ハッシュをレジストリ設定またはシステム設定に保存します。 セキュリティレベル2、3、4のHelixサーバサービスに接続する場合は、パスワードのハッシュがそれらの場所に保存されることも、それらの場所から読み取られることもありません。

Helixサーバスーパーユーザは、個々のユーザ(またはサイト全体のすべてのユーザ)のパスワードをp4 admin resetpasswordコマンドによってリセットすることができます。 また、構成可能変数dm.user.resetpasswordを(p4 configureにより)設定して、新規作成されたユーザが、アカウント作成時に割り当てられたパスワードをリセットするよう強制することも可能です。

ヒント

LDAPサーバとクライアントで文字セットの不一致が発生するのを回避するため、ASCII表(http://www.asciitable.com/)に示されている印刷可能文字(ASCII 32~126)のみをパスワードに使用することをお勧めします。

強力なパスワード

セキュリティレベルとHelixサーバアプリケーションリリースの組み合わせによっては、ユーザは「強力な」パスワードを設定することを求められます。 Helix Coreサーバは、次のような強力なパスワードを作成します。

  • dm.password.minlengthで指定された文字数以上のパスワード(デフォルトは8文字)dm.password.minlength long, which, by default, is 8
  • 次の条件のうち、2つ以上の条件を満たしているパスワード
    • 大文字が1文字以上含まれていること
    • 小文字が1文字以上含まれていること
    • アルファベット以外の文字が1文字以上含まれていること

デフォルトのパスワードは「abcd1234」ですが、構成可能変数の「security」の値が「2」に設定されている場合、このパスワードでは強度が低すぎるため、強力なパスワードに変更する必要があります。abcd1234 is by default, considered a strong password in an environment with the security configurable set to 2

ヒント

強力で覚えやすいパスワードを作成するには:

  1. 次のような語句で開始します。

    Perforce Enterprise-class Version Control.

  2. 次のように単語のような語句を作成します。

    PEnterprise-classVC.

  3. 一部の文字をアルファベット以外の文字で表します。

    PN2prI$-k|@zV(.

Helix Coreサーバ管理者ガイド: 基本』の「サーバセキュリティレベル」も参照してください。

必要なセキュリティが最小限である場合

当社ではチケットベースの認証を使用することをお勧めします。 ただし、必要なセキュリティが最小限である場合は、次のいずれかの方法を使用できます。

方法1 環境変数P4PASSWDをパスワード値に設定します。
方法2 (方法1をオーバーライドします) P4CONFIGファイル内でP4PASSWD の設定を作成します。
方法3 (方法1と2をオーバーライドします)

コマンドラインで-Pパスワードオプションを使用します。 例えば、

p4 -u bruno -P PN2prI$-k|@zV(. sync

これにより、管理者はbrunoというユーザとしてp4 syncコマンドを実行できるようになります。

インストールされている製品のセキュリティレベルに応じて、これらの方法を1つ以上適用できる場合があります。 『Helix Coreサーバ管理者ガイド: 基本』の「サーバセキュリティレベル」を参照してください。

オプション

-O oldpassword

コマンドライン上で古いパスワードを指定することにより、プロンプト入力を回避します。 セキュリティレベル2、3、4を使用するようにサイトが設定されている場合は、このオプションはサポートされません。

-Oオプションを使用する場合、-Pオプションを使用する必要があります。

-P newpassword

コマンドライン上で新しいパスワードを指定することにより、プロンプト入力を回避します。 セキュリティレベル2、3、4を使用するようにサイトが設定されている場合は、このオプションはサポートされません。

user

スーパーユーザはこの引数を付けて他のユーザのパスワードを変更することができます。

g-opts

詳細については、「グローバルオプション」を参照してください。

使用上の留意点

ファイル引数にリビジョン指定子を使えるか? ファイル引数にリビジョン範囲を使えるか? 最低限必要なアクセスレベル

適用外

適用外

list

  • パスワードには1,024文字まで設定可能です。 リリース2013.1からは構成可能変数dm.password.minlengthを設定することによりパスワードの長さを設定できます。 16文字以上の長さのパスワードを必須とするには、スーパーユーザが次のとおり実行します。

    $ p4 configure set dm.password.minlength=16

    デフォルトのパスワード最小文字数は、8文字です。

  • p4 passwdコマンドがネットワークを介してプレーンテキストのパスワードを送ることはありません。 暗号化されたパスワードをサービスに送る際は、チャレンジ/レスポンスのメカニズムが使用されます。
  • パスワードにスペースを含めることはできますが、コマンドラインでそのようなパスワードを使用するときは、パスワードを引用符で囲む必要があります。

    p4 -P "my password" command

  • ユーザが自分のパスワードを忘れた場合、Helixサーバスーパーユーザはコマンドライン上でユーザ名を指定してリセットできます。

    p4 passwd username

  • パスワードを削除するには、パスワードの値として空文字列を設定します。 サイトのセキュリティレベルによっては、nullの文字列のパスワードの設定がPerforceサービスで許可されないことがあります。
  • チケットベースの認証を使用している場合にユーザがパスワードを変更すると、そのユーザのすべてのチケットが無効になり、ユーザはログアウトされます。 これはp4 logout -aを実行する場合と同等です。

スーパーユーザがjoecoderという名前の新しいユーザを作成し、そのユーザにパスワードを割り当てるとします。

p4 -u -f joecoder passwd

デフォルト値を使用したユーザ仕様がサーバに表示され、スーパーユーザはこれを承諾します。

サーバが次のように応答します。

Enter new password:

スーパーユーザがjoecoderのパスワードを入力すると、サーバが次のように応答します。

Re-enter new password:

スーパーユーザがパスワードを再入力すると、サーバが次のように応答します。

Password updated.

関連コマンド

他のユーザの仕様を変更する

p4 user

ユーザのアクセスレベルを変更する

p4 protect

パスワードの代わりにチケットを使用してログインする

p4 login

パスワードのリセットを強制する

p4 admin resetpassword