古いバージョンのClearQuest7を使用する必要があります。インストールで有効になっているAPIは、VBA(Excel)とRatlPERLのみです。(REST APIは私たちのオプションではありませんが、同じクリアテキストの資格情報の問題があります。)
私が書いているratlperlスクリプトを欠陥データベースに実行クエリこと、およびCSV出力を生成します。ratlperlは、認証のためにクリアテキストのユーザー資格情報を必要とすることに注意してください。
ratlperl query.cqpl -u %userid% -p %password% -q "%query%" -c %outfile%
そのスクリプトは、Windowsバッチファイルから呼び出されます。パラメータを指定せずにWindowsコマンドラインから実行すると、バッチファイルはユーザー資格情報を要求しますが、パラメータとして提供することもできます。
query.bat %userid% %password%
バッチファイルのパラメーターとして渡されたユーザー資格情報を使用して、毎日クエリをトリガーします。
これはすべてうまく機能しますが、クリアテキストのパスワードをこのように保存したくありません。レジストリは1つの可能性ですが、マシンにアクセスできる人は誰でもそれらの資格情報にアクセスできます。
これらの資格情報をある程度安全な方法で保存するにはどうすればよいですか?
注意すべき点が2つあります。1つは、プロセスリストに認証資格情報を「表示」させることです。特にUnixの場合-実行するps
と、ユーザー名とパスワードを含む可能性のある引数が表示されます。これを処理する方法は、ほとんどの場合、「引数リストではなく、ファイルから読み取る」ことです。Unixでは、$0
表示方法を変更するように修正することもできますps
(ただし、コマンド履歴には役立ちません。また、適用されるまでに短い期間があるため、完全ではありません)。
もう1つは、保存データを保存することです。
これはもう少し難しいです。基本的に、悪意のあるユーザーがアクセスできないようにする資格情報にスクリプトがアクセスできるようにするソリューションは多くありません。
結局のところ、print $password
スクリプトにを挿入するという単純な手段によって...スクリプトに設定できるほとんどすべてのコントロールをバイパスします。特に彼らがあなたのボックスの管理者アクセス権を持っている場合、その時点で...あなたができることは本当に何もありません。
私が提供するソリューション:
(プレーンテキスト)ユーザー名とパスワードを使用してファイルを作成します。最小権限を設定します。特権を持つユーザーとしてスクリプトを実行しますが、他のユーザーにそのユーザーアカウントへのアクセスを許可しないでください。
そうすれば、他の人があなたのスクリプトを「見る」ことができます(そしてそれを実行する必要があるかもしれません)が、それをコピー/ハッキング/自分で実行することはできません。
私はsudo
これをUnixで提案したいと思います。Windowsの場合、どの程度の粒度があるかわかりません。これはRunAs
一見の価値があります。または、サービスアカウントとして実行され、誰でも生成できる処理のために「要求ファイル」を取得するスケジュールされたタスクがあります。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加