質問

ドメイン内にビルドサーバーがあり(ドメイン内の他のボックスとも通信するため、サーバーが必要です)、DMZ内にWebサーバーがあります。

ビルドスクリプトの一部として、Nantコピータスクを使用して、DMZのWebサーバーにWebサイトをデプロイしたいと思います。問題は、Nantがビルドサーバーのシステムアカウントで実行されるTeamCityから呼び出されることです。また、ビルドサーバーシステムアカウントにDMZ Webサーバーディレクトリへのアクセスを許可する方法が見つかりません。 (とにかく、おそらく良い考えではありません。)

とにかく、異なるWindowsユーザーで特定のタスクを実行するようにNantに指示することはできますか、または私の問題に対する別の解決策はありますか?

編集:私が実行しているもう1つの制限は、新しいドメインアカウントを作成できないということです(少なくとも、承認プロセスを経ることなく)。ローカルマシンアカウントを作成できますが、その場合、runasがDMZ全体で機能するようには見えません。

役に立ちましたか?

解決

いくつかのオプションがあります:

  1. シンプルコマンドランナーを使用して実行します。 runas のように、別のユーザーアカウントで実行されているnant.exeを指定します。 。
  2. TeamCityサーバーを実行するアカウントを変更します。 DMZにアクセスできる制限付き特権ユーザーのように。
  3. <scp <!> gt; (セキュアコピー)タスクは NAntContrib によって提供されます。
  4. nant <exec <!> gt; ファイルをDMZに配置するftpプログラムを呼び出すタスク。

これが少し助けになることを願っています。がんばって!

他のヒント

powershellリモーティングを使用して、ビルドサーバーからリリースをプルできます。サーバーは、ファイルコピーのようなプッシュリリースを使用する場合よりも脆弱ではありません。

Teamcityにログインしてアーティファクトをダウンロードし、powershellを使用してローカルにデプロイするカスタムアプリでこれを実行しています。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top