Docker容器中的可运行jar时,Grails Spring Security Active Directory登录失败

时间:2019-04-05 11:35:14

标签: spring grails spring-security active-directory ldap

我正在使用带有Spring Security的grails 4可运行jar。 身份验证映射到Active Directory。 在开发人员模式下以及在java -jar上与openjdk 11.0.2 2019-01-15 OpenJDK Runtime Environment 18.9 (build 11.0.2+9) OpenJDK 64-Bit Server VM 18.9 (build 11.0.2+9, mixed mode)一起运行时,它运行良好

在Docker容器中(在同一主机上)的相同操作失败,并显示“密码错误”错误(在我们钟爱的Active Directory中确实不明显):javax.naming.AuthenticationException: [LDAP: error code 49 - 80090308: LdapErr: DSID-0C09042F, comment: AcceptSecurityContext error, data 52e, v2580 ]

Dockerfile是

FROM adoptopenjdk/openjdk11:latest
EXPOSE 8080

RUN mkdir /opt/app
COPY build/libs/*.jar /opt/app/app.jar

CMD ["java", "-Djava.security.egd=file:/dev/./urandom", "-jar", "/opt/app/app.jar"]

我猜测系统属性的某些地方有所不同,但是哪一个...

1 个答案:

答案 0 :(得分:0)

我猜想添加“ -Dfile.encoding = UTF-8”才解决了我的问题。