2017-01-19 25 views
1

ゴール: 私は150人以上の従業員にアクセスするためにモジュールを集中化するために暗黙リモートを利用しています。これらのモジュールの中には、インターネット上のさまざまなサイトにクエリを発信するものがあります。暗黙リモート認証ダブルホップ問題

問題: ユーザーが成功し、リモート・サーバに使用することができますが:

$session = New-PSSession -ComputerName ServerA -Authentication Kerberos 

のための認証の不足のインターネットにクエリをしながら彼らは、プロキシでブロックされています。ただし、ユーザーは内部プロダクションにクエリを送信できます。

質問:

私はプロキシを過ぎてそれを作るためにインターネットにアウトバウンドうとしているクエリに、私のPowerShellスクリプトでは、Kerberos認証を添付できますか?

追加情報:私の知識-To

はに従って:-Kerberos認証は、「制約のないdelegation.'Thereforeを使用しています https://blogs.technet.microsoft.com/ashleymcglone/2016/08/30/powershell-remoting-kerberos-double-hop-solved-securely/

、それはアウトバウンドを照会する前に、正しく認証を委任する必要があります。私はまた、セッション変数の外側のスコープをチェックし、nullではありません。

答えて

2

ああ、私はその記事を覚えています。私は、拘束されていない委任に関する部分を間違って読んでいると思います。これはデフォルト設定ではありません。デフォルトではオフになっています(ダブルホップの問題が存在する理由です)。コーディングが必要ないと言われるとき、それはコードの外側に完全に構​​成されているからです。

KerberosやCredSSPなど、何らかの委任を使用する必要があります。

CredSSP can be used fairly securely if you understand exactly what's it doing and what the risk isと、1台のマシンに1台の他のマシンに資格証明を委任させる場合には、私はそれが良いユースケースになると思います。

多くの人は、すべてのマシンを他のすべてのマシンに委任させてしまいます。かなり悪いです。

あなたドン場合は、私は、資格情報が実際に行く必要がある、それは、あるプロキシの種類をあなたの説明から、などを教えすることは難しいので、多分これは悪い考えです。..


別の方法は、ServerAでRunAsユーザーを使用するセッション構成をセットアップすることです。そのセッションで実行されているすべてのコードが1ホップ進むことができますが、これも悪いことがあります。すべてのコードは接続ユーザーではなくそのユーザーとして実行されます。それは監査に挑戦をさせることができます。このアプローチは特定の状況でのみ使用する必要があり、そうではないように思えます。 I wrote an answer here that talks about session configurations

+0

こんにちはブライアン、もう一度あなたの助けに感謝します。可能であれば、Kerberosで代表団を使用することをお勧めします。可能であればクリアテキストのパスワードを送信することで、セキュリティ上の隙間を開けない方がいいです。 Kerberosを使用して委任することは可能ですか? –

+1

@Badlarryはい可能です。できるだけ拘束された委任を使用してください(リンク先の記事)。私はそれを実装していないので、直接的なアドバイスはありませんが、投稿は包括的であるように見えます。拘束されていない委任はそれほど良いものではありませんが、(拘束されていないという新しい要求なしに)可能ですが、それはいつも厄介なSPNを伴います。 TBHこの問題を解決する私の好ましい方法は、それを避けることです(プロセスや実装を委任する必要がないように変更する)。それが可能かどうかは、正確な問題に依存しています。 – briantist

+0

私はあなたの他の提案の例を教えていただけますか?例: 'RunAsユーザーを使用するServerA' 意味、これをスクリプトでどのように記述しますか? –