System Center OrchestratorのWebコンソールでセキュリティエラー

インターネット経由などドメイン外からIEなどのブラウザでOrchestrator Consoleにアクセスするとパスワードなどは合っているはずなのに、以下のようなセキュリティエラーが発生する事象があります。

エラー

Orchestration コンソール
現在の処理の実行エラーが発生しました。
セキュリティエラーです。

f:id:yomon8:20141111135510p:plain

Orchestration コンソール
現在の処理の実行エラーが発生しました。
Orchestrator Web Service に接続できませんでした。考えられる原因:
-サービスがダウンしています。
-サービスのURLが無効です。
-アクセスが拒否されました。

f:id:yomon8:20141111135512p:plain
 

Error executing the current operation.
Cannot connect to the Orchestrator Web Service. Possible reason(s):
- the service is down
- invalid service URL
- access denied

f:id:yomon8:20141111135506p:plain








原因

事象としては、ブラウザから「SC-ORCH-HOST」でアクセスするとうまくいき、「SC-ORCH-HOST.domain.com」でアクセスすると上記のエラーになります。

Orchestration ConsoleはOrchestrator操作用のWeb Service内部的に呼んでいるのですが、ここで使われているのがFQDNでなくNetBios名であることが原因です。

具体的には以下のファイルの中身になります。

C:\Program Files (x86)\Microsoft System Center 2012 R2\Orchestrator\Orchestration Console\Web.config

 
ファイル内のScoServiceUriのエントリがNetBios名になっているところが原因です。

<add key="ScoServiceUri" value="http://SC-ORCH-HOST:81/Orchestrator2012/Orchestrator.svc"/>

対策

このファイルの設定や、DNSなどの名前解決を調整することで解決できます。


例えば、一番簡単な方法の一つとして、

<add key="ScoServiceUri" value="http://SC-ORCH-HOST.domain.com:81/Orchestrator2012/Orchestrator.svc"/>

と直してIISのサイトを再起すると、http://SC-ORCH-HOST.domain.com:82でアクセスできるようになります。

更にWindows統合認証を利用したSSOをしたい場合は、その後にIEの「ツール」>「インターネットオプション」>「セキュリティ」>「ローカルイントラネット」>「サイト」で「SC-ORCH-HOST.domain.com」を追加してあげます。これで自動ユーザ認証もできるようになります。