Kerberos:ASとTGSの分離


9

Kerberosでは、認証サーバー(AS)とチケット許可サーバー(TGS)は通常、同じサーバーに実装されます。このマシンは、鍵配布センター(KDC)と呼ばれます。

確かに、これらのサービスを同じ物理マシンに実装することは理にかなっています。中小規模のネットワークでは、これら2つのサービスを分離するのはやり過ぎです。さらに、私は比較的信頼できる情報源を持っています。

TGSとASは同じDBにアクセスする必要がある=>異なるマシンにTGSとASを実装することはあまり意味がありません

しかし、どのデータベースを2つの間で共有する必要があるのか​​わかりません。

これは私の考えです。ASとTGSをどのように分離するのですか。共有データベースはありません。

  • ASとTGSは分離されているため、マスターシークレットは異なります
  • ASには、すべてのユーザーのデータベースに、それぞれのマスターシークレット(ユーザーがサインインするときに使用され、セッションキーを暗号化する)と、TGSのマスターシークレット(要求されたTGTを暗号化する)があります。
  • TGSにはデータベースがあり、どのユーザーがどのサービス(ACL、失効リストなど)を使用できるかを決定できます。また、すべてのサービスとそれぞれのマスターシークレット(チケットを暗号化する)を持つデータベースを決定できます。

ユーザーがサービスを使用する場合(簡略化):

  • ASで認証する
  • TGSマスターシークレットで暗号化されたチケット許可チケット(TGT)と、ユーザーのマスターシークレットで暗号化されたセッションキーを取得します。
  • TGTでTGSに連絡する
  • サービスのマスターシークレットで暗号化されたチケットを取得する
  • チケットでサービスに連絡する

何かが足りないのでしょうか、それともASとTGSの分離にまったく問題はありませんか?


1
Kerberosの内部に深く入り込んでいるようです。スケーリングの通常の方法は、KDCを追加するだけなので、何を達成しようとしているのかよくわかりません。
マイケルハンプトン

1
右-あなたが実際に直面している問題、あなたが解決しようとしていること?
mfinni 2014

1
具体的な問題を解決するつもりはありません。私はKerberosの内部(試験用)を理解しようとしていますが、現時点では実際には使用したくありません。質問は純粋に理論的なものです。私が間違ったことを理解したかどうか、または私の質問の引用が完全に正しくないかどうかを知りたいだけです。
ミッシュ2014

回答:


4

あなたの質問はすべて理論です。現物でお答えします。ASとTGSは論理サーバーであるため、理論的には分離できます。しかし実際には、それらを別々のマシンに実装する十分な理由はありません。そのため、実際には誰もそれを行いません。Kerberos認証の観点から見ると、世界で最も規模の大きいネットワークでさえ、KDCの論理コンポーネントを分離する必要はありません。Kerberosの実際の実装では、ASが必要とするすべてのデータとTGSが必要とするすべてのデータは、すべて同じデータベースに格納されます。理論的には分離することもできますが、分離する正当な理由はなく、実行を不必要に複雑にするだけです。


1
ASとTGSを分離するときに別の問題を見つけました。ASからTGTを取得するだけでなく、他のサービスのチケットを要求することもできます(たとえば、この1つのチケットだけが必要であることがわかっている場合は、 TGT経由で迂回する必要はありません)。これは、ASがTGSのみが必要と想定したすべてのデータを追加で必要とすることを意味します。
ミッシュ2014
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.