到目前为止,在我们的系统中,我们一直在使用Keycloak 3.4.3和Script Authenticator身份验证提供程序功能作为基于浏览器的身份验证的一部分。现在,升级到Keycloak 4.6.0.Final 后,我们注意到Script Authenticator
的选项已从列表中消失。
此功能在Keycloak 4.5.0.Final中仍然存在。由于Keycloak 4.6.0.Final中已修复的功能,我们无法选择使用4.5.0。
我们使用了Script Authenticator功能,根据LDAP属性将用户“白名单”。现在,由于删除了脚本选项,我们不再能够使用Keycloak。
有什么想法为什么要删除脚本身份验证器?还是它已被移到Keycloak管理控制台中的另一个位置?
只需添加一些详细信息:
答案 0 :(得分:5)
您还需要以以下方式启用upload_scripts:
-Dkeycloak.profile.feature.scripts=enabled -Dkeycloak.profile.feature.upload_scripts=enabled
但是从Keycloak 7.0.1.Final开始不推荐使用此功能“ upload_scripts”
要获得最佳解决方案,您必须使用JavaScript Providers
答案 1 :(得分:2)
您可以通过以下方式启动服务器来启用此功能:
-Dkeycloak.profile.feature.scripts = enabled
或者您可以通过添加以下内容在profile.properties文件(在配置文件夹中)中进行永久设置:
feature.scripts =已启用
答案 2 :(得分:1)
首先要感谢使用profile.feature
解决方案的人。
第二,我想添加一些输入-如果您在docker上使用keycloak,则需要使用java_opts
参数运行容器,以便执行此操作:
-e JAVA_OPTS="-Dkeycloak.profile.feature.scripts=enabled
-Dkeycloak.profile.feature.upload_scripts=enabled -server -Xms64m -Xmx512m
-XX:MetaspaceSize=96M -XX:MaxMetaspaceSize=256m -Djava.net.preferIPv4Stack=true
-Djboss.modules.system.pkgs=org.jboss.byteman -Djava.awt.headless=true"
请注意,您还将需要其他参数,例如-server
,-Xms64m
等(可以根据需要进行调整)。