4

我们正在尝试设置 Jenkins 以自动化构建。我们已经使用 Hudson 很长时间了,但现在由于 Active Directory 身份验证支持,我们正在迁移到 Jenkins。AD-plugin 已安装: https ://wiki.jenkins-ci.org/display/JENKINS/Active+Directory+plugin 据我所知,Jenkins 正在尝试连接到 AD 服务器,但“套接字已关闭”错误。这是堆栈跟踪的一部分:

Failed to test the validity of the user name <SOMEUSER>
org.acegisecurity.BadCredentialsException: Failed to retrieve user information for <SOMEUSER>; nested exception is javax.naming.ServiceUnavailableException: <SOMENAME>.<SOMENAME>:636; socket closed; remaining name 'DC=<SOMENAME>,DC=<SOMENAME>'
at hudson.plugins.active_directory.ActiveDirectoryUnixAuthenticationProvider.retrieveUser(ActiveDirectoryUnixAuthenticationProvider.java:306)
at hudson.plugins.active_directory.ActiveDirectoryUnixAuthenticationProvider.retrieveUser(ActiveDirectoryUnixAuthenticationProvider.java:190)
at hudson.plugins.active_directory.ActiveDirectoryUnixAuthenticationProvider.retrieveUser(ActiveDirectoryUnixAuthenticationProvider.java:134)
at hudson.plugins.active_directory.AbstractActiveDirectoryAuthenticationProvider.loadUserByUsername(AbstractActiveDirectoryAuthenticationProvider.java:30)

我 100% 确定凭据是正确的。运行 Jenkins 的服务器在域中,所以从这里开始一切正常。我想詹金斯隐藏了一些错误消息,因此我无法准确地指定问题......

4

1 回答 1

5

在“管理 Jenkins”>“配置系统”下:

  • 启用安全性
  • 安全领域 = 活动目录
  • 输入您的“域名”
  • 单击右侧附近的“高级”(就在(?)按钮下方)
  • 添加域控制器
  • 站点下:添加您需要的信息(OU=<>、DC=<> 等) - 任意数量 - 我们的有 5 个 OU(s) 和 3 个 DC 字段
  • 在绑定 DN字段下添加您的绑定用户(我们的类似于CN=、OU=、DC=、DC=、DC=
  • 在绑定密码字段下添加您的绑定密码

一旦您设置了所有这些(或您需要的任意数量):单击测试按钮(它应该位于右侧的绑定密码字段下方 - 靠近 (?) 帮助按钮。

如果你没有看到这些,请告诉我。

+================================================== ================+

编辑:

对于绑定用户名,你可以试试这个:

CN=,OU=SMTH,OU=SMTH,OU=SMTH,OU=SMTH,DC=SMTH,DC=SMTH,DC=SMTH

LDAP 服务名称或绑定服务名称在哪里。我还没有看到

CN=SECOND_NAME\, FIRST_NAME - USER_ID

之前的格式(不是说它是错误的,只是我不知道)。所以像

CN=MY LDAP SVC 帐户,OU=SMTH,OU=服务,OU=帐户,OU=my,DC=域,DC=com

于 2012-07-23T20:02:05.377 回答