Java SAML身份验证后,用户似乎未分配给角色

Java SAML身份验证后,用户似乎未分配给角色,java,tomcat,keycloak,saml-2.0,tomcat9,Java,Tomcat,Keycloak,Saml 2.0,Tomcat9,我正在尝试在ApacheTomcat9.0.24上设置SAML身份验证。我使用的是keydove-saml-tomcat-adapter-dist-7.0.0插件,该插件应该针对keydove独立服务器v7.0.0进行身份验证 我在web.xml中设置了常见的角色映射,如: <security-role> <role-name>role0</role-name> </security-role> <security-constrain

我正在尝试在ApacheTomcat9.0.24上设置SAML身份验证。我使用的是keydove-saml-tomcat-adapter-dist-7.0.0插件,该插件应该针对keydove独立服务器v7.0.0进行身份验证

我在web.xml中设置了常见的角色映射,如:

<security-role>
    <role-name>role0</role-name>
</security-role>
<security-constraint>
   <display-name>Security constraint for the /ktc folder</display-name>
    <web-resource-collection>
        <web-resource-name>/ktc page</web-resource-name>
        <url-pattern>/ktc</url-pattern>
    </web-resource-collection>
    <auth-constraint>
        <role-name>role0</role-name>
    </auth-constraint>
</security-constraint>
docker机器正在相互查找,当我尝试访问受保护的资源/ktc时,尝试被拦截,我被引导到KeyClope服务器登录。如果我提供的凭据无效,则登录尝试将被正确拒绝。此外,如果我提供了有效的凭据,我将被重定向回我的Tomcat网站

不幸的是,Tomcat没有将我传递给受保护的资源。如果我再次尝试访问它,则在屏幕上快速闪烁的内容第二次被重定向回,而没有向我提供登录表单。因此,我怀疑我实际上已通过身份验证,但没有获得预期的角色分配。KeyClope服务器事件日志还显示我正在登录,但它们不告诉我如何成功地分配了哪些角色


我做错了什么

在KeyClope身份验证服务器上配置的POST端点必须以/saml结尾,并且不能指向Tomcat中现有servlet的任何POST端点。只有这样,钥匙斗篷阀才会拦截它

我设法找到了问题所在,由社区决定是否保留。