1

簡単な要約 - Teamcity エージェントは私の資格情報で実行するように設定されていて、権限の低いアカウントを使用しているかのように動作しているように見えますが。

ビルド エージェント サービスは、資格情報を使用して実行するように設定されており、サービス アプレットで確認できます。

ビルドには、IE COM オブジェクトを使用して IE にページをロードする単純な powershell スクリプトがあります。

$IE=new-object -com internetexplorer.application 
$IE.visible=$true 
$IE.navigate2("https://myurl.com/location")

また、ネットワーク ドライブを webDAV の場所にマップする別のコマンド スクリプトもあります。

NET USE Y:  https://myurl.com/location

これらは両方ともコマンドラインから正常に実行されます。

実行して、スクリプトが自分のアカウントで実行されていることを確認しました

echo $([Environment]::UserName)

powershell で、

私は誰

ドライブ マッピング スクリプトのコマンド。

powershellの場合、エラーが発生します

new-object : Retrieving the COM class factory for component with CLSID 
{0002DF01-0000-0000-C000-000000000046} failed due to the following error:
 80080005 Server execution failed (Exception from HRESULT: 0x80080005
 (CO_E_SERVER_EXEC_FAILURE)).
 At line:1 char:5
 $IE=new-object -com internetexplorer.application
 CategoryInfo          : ResourceUnavailable: (:) [New-Object], COMException
 FullyQualifiedErrorId : NoCOMClassIdentified,Microsoft.PowerShell.Commands.NewObjectCommand

私が得るドライブマッピングスクリプトのために

  "The system cannot find the drive specified."

また、スクリプトの一部として NET USE を実行して、マップされているドライブを確認しようとしましたが、スクリプトを実行する前に手動でマップしても、ドライブが表示されません。

4

1 に答える 1

1

自分で答えを見つけただけかもしれません。

Windows サービスとして実行すると、アクセス許可に影響があるようです。

https://confluence.jetbrains.com/display/TCD8/Known+Issues#KnownIssues-Windowsservicelimitations

解決策は、サービス コンソールの外部でエージェントを手動で開始することです。

于 2015-10-06T14:06:00.723 に答える