我正在使用带有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"]
我猜测系统属性的某些地方有所不同,但是哪一个...
答案 0 :(得分:0)
我猜想添加“ -Dfile.encoding = UTF-8”才解决了我的问题。