web-dev-qa-db-ja.com

オンプレミスTFS2015からPATを取得する方法

カスタムステップをXAMLビルドからTFS2015オンプレミスの新しいビルドタスクに移行したいと考えています。 NodeJSとtfx-cliをインストールしましたが、tfx-cliがTFSに接続する場合、pat(パーソナルアクセストークン)を提供する必要がありますが、どこで入手できるかわかりません。すべてのサンプルはVSO用ですが、オンプレミスTFS2015用ではありません。オンプレミスTFS2015からPATを取得することは可能ですか?

12
McMlok

TFS 2015はパーソナルアクセストークンをサポートしていません。この機能はTFS2017で導入されました。それまでの間、基本認証を構成して使用する必要があります(TFSサーバーがSSLで実行されている場合にのみ基本認証を有効にする)。以下のトリックを使用して、コマンドlienツールをトリックし、NTLMプロキシ(Fiddlerなど)に認証を処理させて認証します。

TFSサーバーで基本認証を構成したくない場合(セキュリティ上の懸念から多くの人が望まない場合)、巧妙なトリックを使用してFiddlerに認証を処理させることができます。

enter image description here

次に、次のように入力します。

_C:\>set http_proxy=http://localhost:8888
C:\>tfx login --auth-type basic --service-url http://jessehouwing:8080/tfs/DefaultCollection
_

ユーザー名とパスワードの入力を求められます。何を入力してもかまいません。フィドラーがバックグラウンドで認証を処理します。

私のブログで概説されているより詳細な手順

オンプレミスTFSサーバーに対してtfxを使用する場合にも一般的な問題である自己署名証明書と戦っている場合は、十分に新しいバージョンのNode andpointを使用していることを確認してください。環境変数を使用して、追加の証明書ストアに送信します。

Node.js 7.3.0(およびLTSバージョン6.10.0および4.8.0)以降、環境変数を使用してNode.jsに既知の証明書を追加できるようになりました。これは、クラウドやその他の展開環境で、ポリシーの問題として信頼できる証明書を追加する場合(明示的なコーディングではなく)、またはパーソナルマシンで、たとえばプロキシサーバーのCAを追加する場合に役立ちます。 NODE_EXTRA_CA_CERTSの使用の詳細、および元のプルリクエストについては、CLIのドキュメントを参照してください。

NODE_EXTRA_CA_CERTS = file#

追加:v7.3.0

設定すると、よく知られている「ルート」CA(VeriSignなど)がファイル内の追加の証明書で拡張されます。ファイルは、PEM形式の1つ以上の信頼できる証明書で構成されている必要があります。ファイルが見つからないか不正な形式の場合、メッセージはprocess.emitWarning()で(1回)発行されますが、それ以外の場合はエラーは無視されます。

Ca optionsプロパティがTLSまたはHTTPSクライアントまたはサーバーに明示的に指定されている場合、既知の証明書も追加の証明書も使用されないことに注意してください。

15
jessehouwing

Tfx-cliがTFSインスタンスに接続するための別のオプションがあり、それは基本認証です。次の形式を使用してください。

tfx login --auth-type basic --username myuser --password mypassword --service-url http://tfscollectionurl

これが Github からの引用です:

または、-auth-type basicを渡すことで基本認証を使用することもできます( 基本認証の構成 を読んでください)。 NTLMはまもなく登場します。

注:この機能を使用すると、ログイン資格情報がプレーンテキストでディスクに保存されます。

4
Yan Sklyarenko