2

我在关注这篇文章http://blog.springsource.com/2009/09/28/spring-security-kerberos/在本地服务器上设置服务主体,我将使用它来测试与活动目录的弹簧安全集成。服务器已Tomcat上运行,其中部署应用程序,并通过我http://localhost:8080/myapp在2k8服务器上为springsecurity kerberos创建服务主体

问题

应该是什么我的服务提供商名称访问它?

文章说:

对于这项工作,每一个Web应用程序需要在 Kerberos服务器注册并获得服务和PRINICIPAL分配的共享秘密 。对于Web应用程序,服务主体必须是 “HTTP/@ DOMAIN”。例如 “HTTP/[email protected]”,如果您的应用程序运行于 web.springsource.com。

由于我对localhost运行我想这将是HTTP/[email protected]做什么我把@SPRINGSOURCE.COM?

回答

0

就地到Kerberos的工作,你应该在网络中配置DNS和AD服务器。应用程序服务器和客户机必须使用DNS,客户机必须使用AD身份验证。不允许使用名称“localhost”。应用程序服务器可能不在域中。

假设在域,那么你需要所有的机器是:

  1. 指定的应用程序服务器的DNS名称,如应用服务器(应用服务器 .yourdomain.local)
  2. 添加DNS名称的服务器应用程序直接和反向DNS服务器的区域。 (link
  3. 在域中创建一个简单的用户,并设置“不能更改密码”和“密码永不过期限制”选项(如用户名MYUSER
  4. 在服务器,域控制器,开一个命令提示,运行下面的命令:

    C:> SETSPN -A HTTP /应用服务器MYUSER

    C:> SETSPN -A HTTP/appserver.yourdomain.local MYUSER

  5. 检查CORRE CT:

    C:> SETSPN -l MYUSER(如果将显示你之前输入的文字,那么一切都OK

  6. 接下来,创建一个密钥文件:

    C:>的ktpass/out C:/myUser.keytab/mapuser [email protected]/princ HTTP/[email protected]。LOCAL /传+ rndPass /密码RC4-HMAC-NT/p型KRB5_NT_PRINCIPAL/KVNO 0

就是这样,现在你可以使用文件myUser.keytab和主体名称HTTP/appserver.yourdomain.local在Web应用程序

可能在将来有用: