在Kerberos中,身份validation服务器(AS)和票证授予服务器(TGS)通常在同一台服务器上实现。 这台机器被称为密钥分配中心(KDC)。
当然,在同一台物理机器上实现这些服务是有道理的,就像在中小型networking中一样,把这两种服务分开是过分的。 此外,我有一个相对可靠的来源,其中说(翻译):
TGS和AS必须访问相同的DB =>在不同的机器上实现TGS和AS没有什么意义
但是,我不知道哪个数据库必须在两者之间共享。
这是我的想法,我将如何分离AS和TGS,没有共享数据库:
当用户想要使用服务(简化)时:
我错过了什么东西,还是真的没有任何问题分离AS和TGS?
你的问题是所有的理论。 所以我会以实物回答。 AS和TGS是逻辑服务器,理论上它们可以分开。 但是实际上在单独的机器上没有很好的理由去实现它们,所以在现实生活中没有人这样做。 即使是Kerberos身份validation方面世界上最大,最繁忙的networking,也不需要将KDC的逻辑组件分离出来。 在实际的Kerberos实现中,AS需要的所有数据以及TGS需要的所有数据都存储在同一个数据库中。 它在理论上可以分开,但是没有理由这么做,什么也不做,只是不必要地使执行复杂化。