繁体   English   中英

使用Keycloak保护Tomcat应用程序时出现HTTP 403禁止错误

[英]HTTP 403 forbidden error when Use Keycloak to protect a Tomcat App

我整整一天都在努力解决这个错误。 我一次又一次地在tomcat中检查我的Keycloak和APP的配置,但没有发现错误。

下图显示了测试场景:

在此输入图像描述

APP的配置:

1.Keycloak.json是从Keycloak控制台复制而来的

2.context.xml也正确,因为它在“localhost”场景下工作正常

3.web.xml:

<web-app xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
  version="3.0">

    <module-name>Keycloak-Tomcat-App</module-name>

<!--
<security-constraint>
    <web-resource-collection>
        <web-resource-name>init pages</web-resource-name>
        <url-pattern>/*</url-pattern>
    </web-resource-collection>
    <auth-constraint>
        <role-name>user</role-name>
    </auth-constraint>
</security-constraint>
-->

<security-constraint>
    <web-resource-collection>
        <web-resource-name>All roles pages</web-resource-name>
        <url-pattern>/roles/*</url-pattern>
    </web-resource-collection>
    <auth-constraint>
        <role-name>admin</role-name>
    </auth-constraint>
</security-constraint>

<login-config>
    <auth-method>BASIC</auth-method>
    <realm-name>this is ignored currently</realm-name>
</login-config>

<security-role>
    <role-name>admin</role-name>
</security-role>
<security-role>
    <role-name>user</role-name>
</security-role>

Keycloak控制台配置:

我创建了一个名为csf-admin的用户,并将角色“admin”和“user”分配给csf-admin

然后

1)在linux.1上使用broswer访问linux.3上TOMCAT中部署的APP(用户https)

2)我的broswer可以打开Keycloak Auth页面(用户https,linux.2上的keycloak)

3)登录keycloak为csf-admin

4)Keycloak将我重定向到APP网址(使用https)

5)HTTP 403“禁止访问指定的资源。” 到场

我真的不知道根本原因.....需要你的帮助.....

由于问题是在提交登录页面和来自Keycloak IDP的重定向之后,问题应该是客户端应用程序(APP)尝试连接到访问令牌的IDP时的问题。

  1. 从客户端应用程序到IDP可能存在连接问题。 可以使用telnet命令对其进行测试(使用您的IDP的https端口)。

  2. 可能存在IDP SSL证书验证问题。 检查是否使用了正确的域名。 或者,如果您的客户端应用程序信任CA.

另请参阅链接的post wildfly集成与keycloak 403禁止错误

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM