qacli auth

結果を保管しているリモートサーバにユーザの認証を与えます。


使用方法

auth  {-D|-V} [-U <[protocol://]host:port>] [-u <username>] [-p <password>] [-f <password-file>] [-t <application-token>] [-T <token-file>] [-x <days>] [-q] [--] [-h]

詳しい説明

解析の結果をレガシーのPerforce QAC Dashboardまたは、Validate サーバにアップロードするときに使用します。

このコマンドは上記のいずれかのサーバを使用して認証し、ユーザ名とパスワードの入力を繰り返さなくても以降のコマンドを使用できるようにするトークンを返します。

Perforce QAC Dashboardに接続する場合、トークンは文字列で stdout に出力されます。Validate に接続する場合、トークンはファイル形式でユーザのファイルシステムに格納されます。ファイルシステムの場所はユーザデータの保存先で、デフォルトでは以下の場所です。

Windows: %LOCALAPPDATA%\Perforce\QAC-<version>/app/validate_ltoken 
Linux: $HOME/.config/Perforce/QAC-<version>/app/validate_ltoken

この場所は環境変数を QAC_LTOKEN と設定することでオーバーライドできます。詳細についてはコンポーネントマニュアルの付録 D 環境変数を参照してください。

加えて、Validateの新しい認証方法がサポートされるようになりました。詳細についてはValidateのドキュメンテーションを参照してください。この変更により、サードパーティプロバイダーを使用して認証することが可能になりました。

さらに、Validate が時間制限のあるアプリケーショントークンを生成するようになりました。詳細は --token、--token-file オプションを参照してください。


オプション

オプション名、短縮形 デフォルト 説明
‑‑dashboard, ‑D   Dashboardの結果を保管しているサーバを使用して認証します。デフォルトでは1日以内に失効するトークン(テキストで)を返します。有効期間を延長するには --expire-in オプションを使用してください。
‑‑expire‑in, ‑x 1 Dashboardの認証トークンは指定された日数の後失効します。
‑‑help,‑h   使用方法の情報を表示し、終了します。
‑‑ignore‑rest, ‑‑   このフラグ以降のラベルの付いた引数をすべて無視します。
‑‑log‑out, ‑q   Validateの結果を保管しているサーバからログアウトする、つまり、ユーザのファイルシステムからトークンを削除します。
‑‑password, ‑p   結果を保管しているサーバを使用するためのパスワード
‑‑password‑file, ‑f   ファイルへのパス名に含まれているパスワード。パスワードは適切に保存、管理されなければなりません。
‑‑token, ‑t   用意されているValidateアプリケーショントークンを使用するときのコマンドです。
‑‑token-file, ‑T   アプリケーショントークンが含まれているファイルへのパス名です。トークンは適切に保存、管理されなければなりません。
‑‑url, ‑U   結果を保管しているサーバの URLです。httpプロトコルがデフォルトです。例えば、localhost、127.0.0.1:8080、 https://prometheus:888 など
‑‑username, ‑u   結果を保管しているサーバを使用するためのユーザ名
‑‑validate, ‑V   Validateの結果を保管しているサーバを使用して認証します。デフォルトではユーザのファイルシステムに保管されているトークンを返します。この認証は--log-out が実行されるまで有効です。

Dashboard のトークンには期限があります。デフォルトでは1日で失効します。Validate  のトークンは失効しません。使用後は --log-out  を実行する必要があります。

Validate サーバへのログイン

Validate サーバにログインするには、ホストの prometheus で以下のコマンドを実行します。

qacli auth --validate --username trinity --password pa55word --url prometheus:8888

リターンコード 0 (ゼロ)はログインが成功したことを示しており、トークンはユーザのファイルシステムに保管されます。


アプリケーショントークンを使用してValidateサーバで認証する

アプリケーショントークンを使用してValidateサーバで認証するには、まず、Validateのwebインターフェースにログインし、アプリケーションのトークンを生成するメニューにナビゲートします。そこから、新しいアプリケーショントークンを作成し、有効期限を設定してトークンを生成します。

トークンは安全な、保護された場所に保管してください。

このトークンを使用して以下のような qacli コマンドにより認証をすることができます。

qacli auth --validate --url prometheus:8888 --token <long token string> 

あるいは、トークンを適切に保護されたファイルに保存し、そのファイルを使用して認証することもできます。

qacli auth --validate --url prometheus:8888 --token-file <token-filename> 

Dashboard サーバへのログイン

Dashboard サーバにログインするには、ホストの zion でパスワードを含むパスワードファイルを使用して以下のコマンドを実行します。

qacli auth --dashboard --username trinity –password-file my_creds --url zion:8080 

リターンコード 0 (ゼロ)はログインが成功したことを示しており、トークンは stdout に出力されます。


新しい認証方法を使用する

Validateサーバが新しい認証方法を使用するよう設定されている場合、まず以下のコマンドを入力します。

qacli auth --validate --url matrix:8866

    Initializing device authorization...
    Enter the following code in your browser: 6E20-43F2
    If a browser doesn't open please navigate to http://LM-21-3:8008/review/insight-review.html#device
    Press Enter to continue...
    Waiting for response... 

規定のURLのブラウザが開き、token/pin の入力が可能になります。