これは的外れだと思いますが、最近パスワードを変更しましたか?
このようなコマンド文字列では、多くの人が .bat ファイルを使用してプロセスを自動化しています。
次の理由から、.bat ファイルでパスワードを使用するのは好きではありません。
- それらは安全ではありません(明らかに、私は知っています)
- メンテナンス。パスワードを更新するたびに、忘れずにすべてのスクリプトを更新する必要があります。または、すべての障害を痛烈にトラブルシューティングし、最終的にパスワードが埋め込まれていたことを思い出します。
これを軽減するために、/P パラメーターを指定して SET を使用し、.bat ファイルの実行中にパスワードの入力を求めます。
完全ではありませんが、パスワードをハードコーディングするよりははるかに優れています。
指定したコマンド文字列を使用した例を次に示します。
rem ----- スクリプト開始 -----
SET /P pwd=パスワード:
CrmSvcUtil.exe /out:E:\OrgXrm.cs /url: https://mdtestuser.api.crm5.dynamics.com/XRMServices/2011/Organization.svc
/username:MDTest@MDTestUser.onmicrosoft.com /password: % pwd%
CLS
SET pwd=.
rem ----- スクリプト終了 -----
この例では、SET /P はコマンド プロセッサに、環境変数を設定して入力を求めるように指示します。
「pwd」は設定する環境変数です。
「%pwd%」は、環境変数の実際の使用です。
「Password:」は、.bat ファイルの実行時に表示されるプロンプト文字列です。
「CLS」は画面をクリアします。
「pwd=.」環境変数を「.」に設定します。そのため、パスワードは環境に残されません。
「rem」で始まる行は単なるコメントなので無視してかまいません。
ソリューションの「完璧ではない」部分は、入力時にパスワードが表示されることです. ただし、プロンプトの直後に画面をクリアすると、すぐに画面からクリアされます。入力時にパスワードが表示されないようにする方法は他にもありますが、非常に複雑すぎるか、追加のビットをダウンロードする必要があると思います. .bat ファイルを使用するアイデアは、迅速かつ簡単に更新できるため、メンテナンスが少なくて済むということです。
SET /P は私の場合、ファイルを更新する必要があるときはいつでも誰も私の肩越しに見ていないのでうまく機能し、.bat ファイルが書き込まれると実質的にメンテナンスはありません。