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應用程序

可能在將來有用: