hud*_*udi 47 java authentication web.xml java-ee
我的web.xml看起来像:
<security-constraint>
<web-resource-collection>
<web-resource-name>app</web-resource-name>
<url-pattern>/*</url-pattern>
</web-resource-collection>
<auth-constraint>
<role-name>Role</role-name>
</auth-constraint>
</security-constraint>
Run Code Online (Sandbox Code Playgroud)
这保护每一方免受授权,但我想要排除/信息.这可能吗 ?
小智 82
将<auth-constraint>
元素省略<security-constraint>
为不需要身份验证的资源,例如:
<security-constraint>
<web-resource-collection>
<web-resource-name>app</web-resource-name>
<url-pattern>/info</url-pattern>
</web-resource-collection>
<!-- OMIT auth-constraint -->
</security-constraint>
<security-constraint>
<web-resource-collection>
<web-resource-name>app</web-resource-name>
<url-pattern>/*</url-pattern>
</web-resource-collection>
<auth-constraint>
<role-name>Role</role-name>
</auth-constraint>
</security-constraint>
Run Code Online (Sandbox Code Playgroud)
如果您正在寻找带有Spring Boot解决方案的keycloak,请在您的应用程序属性文件中尝试这样的操作:
keycloak.security-constraints[0].authRoles[0]=users
keycloak.security-constraints[0].security-collections[0].patterns[0]=/*
keycloak.security-constraints[1].security-collections[0].patterns[0]=/info
Run Code Online (Sandbox Code Playgroud)
这将对除/info之外的所有 URL 应用安全性