我试图在wildfly上保护一个演示web应用程序。我已经在单机版中定义了这个安全域。xml
<security-domains>
<security-domain name="projects" cache-type="default">
<authentication>
<login-module code="Database" flag="required">
<module-option name="dsJndiName" value="java:jboss/datasources/TestDS"/>
<module-option name="rolesQuery" value="SELECT role, 'Roles' FROM users WHERE username=?"/>
<module-option name="hashAlgorithm" value="MD5"/>
<module-option name="hashEncoding" value="hex"/>
<module-option name="principalsQuery" value="SELECT password from users WHERE username=?"/>
</login-module>
</authentication>
<authorization>
<policy-module code="Database" flag="required">
<module-option name="dsJndiName" value="java:jboss/datasources/school"/>
<module-option name="rolesQuery" value="SELECT role, 'Roles' FROM users WHERE username=?"/>
<module-option name="hashAlgorithm" value="MD5"/>
<module-option name="hashEncoding" value="hex"/>
<module-option name="principalsQuery" value="SELECT password from users WHERE username=?"/>
</policy-module>
</authorization>
</security-domain>
</security-domains>
然后在web-inf下,我在web.xml中定义了这个安全约束
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" id="WebApp_ID" version="3.1">
<security-constraint>
<web-resource-collection>
<web-resource-name>projects</web-resource-name>
<url-pattern>/twp/projects/*</url-pattern>
<http-method>POST</http-method>
<http-method>GET</http-method>
<http-method>PUT</http-method>
<http-method>DELETE</http-method>
</web-resource-collection>
<auth-constraint>
<role-name>ADMINISTRATOR</role-name>
</auth-constraint>
</security-constraint>
<login-config>
<auth-method>FORM</auth-method>
<realm-name>projects</realm-name>
<form-login-config>
<form-login-page>/login.xhtml</form-login-page>
<form-error-page>/error.xhtml</form-error-page>
</form-login-config>
</login-config>
<security-role>
<role-name>ADMINISTRATOR</role-name>
</security-role>
<security-role>
<role-name>USER</role-name>
</security-role>
</web-app>
以及jboss网站上的这些内容。xml
<?xml version="1.0" encoding="UTF-8"?>
<jboss-web>
<security-domain>java:/jaas/projects</security-domain>
</jboss-web>
问题是,如果我转到/projects URL,我不会重定向到登录页面,就好像忽略了约束一样。
以你的配置,它工作得很好。在控制台,你有这两行吗?:
WARN [io.undertow.servlet] (ServerService Thread Pool -- 7) UT015020: Path /twp/projects/* is secured for some HTTP methods, however it is not secured for [TRACE, HEAD, CONNECT, OPTIONS]
INFO [org.wildfly.extension.undertow] (ServerService Thread Pool -- 7) WFLYUT0021: Registered web context: '/test-1.0-SNAPSHOT' for server 'default-server'
如果没有,你应该把你的配置到野蝇standalone.xml的相关部分
第一个表示路径是安全的,第二个表示调整了大小的web上下文。
http://localhost:8080/test-1.0-SNAPSHOT/twp/projects下的每个网址都将被保护并重定向到登录页面。
例如
http://localhost:8080/test-1.0-SNAPSHOT/twp/projects/all
但不是
http://localhost:8080/test-1.0-SNAPSHOT/twp/all
运行Wildfly16,我在应用程序的WEB-INF/jboss-web.xml中指定一个安全域,如下所示: 在Wildfly的standalone.xml中,我将该安全域指定为应用程序安全域,如下所示: 当然,随后还定义了OAuth2Realm,并且Wildfly毫无怨言地启动。但是,当通过http访问应用程序时,Wildfly总是在legacy security部分使用安全域“Other”,而
我试图保护我的Spring启动应用程序(1.21)看起来像我的antMatcher("/报告**"). hasRole("报告")的一些URL模式被忽略。 e、 g.如果我浏览到localhost:9000/report/books之类的内容,我需要登录,它只适用于我的用户名密码组合,但我没有将角色报告设置为我的用户“user”。所以我希望我不被允许访问报告网站,但页面会显示出来。 我必须如何更改
问题内容: 我在MySQL的某些列上创建了约束表。然后在PHP中,我编写了一个脚本,用于通过插入查询插入数据。当我省略此插入语句中的列之一时,我会期望收到来自MySQL的错误消息,并且我期望脚本会失败。相反,MySQL在字段中插入空字符串。在其他省略的字段中,数据为NULL,这很好。有人可以告诉我我做错了什么吗? 我正在使用此表: 这个插入语句: 或使用绑定变量: 问题答案: 如果确定未使用显式默
我正在尝试配置Spring Security注释,我已经设法在xml中设置了Spring Security配置(由intercept-url元素配置),但是现在我想在我的beans中使用安全注释。但是当试图在没有记录的情况下访问安全控制器方法时,安全注释被完全忽略。这是我的控制器bean: 和登录控制器: 和配置:web.xml Spring-套筒.xml 和Spring安全.xml 如果需要,我
问题内容: 我有一个MySQL表来保存标签(即像在Stack Overflow上使用的那些标签)。它仅具有一个id(pk)和一个标签列来保存标签本身。 我的Tag实体的带注释的get方法如下所示。 我在标签上使用了唯一的列约束,因为给定标签的行不应超过一行。但是,Hibernate似乎忽略了这一点,即我可以多次保存完全相同的标签,并且它只是创建一个新行而不是抛出异常。 我是否缺少某些东西,还是应该
1.【强制】隶属于用户个人的页面或者功能必须进行权限控制校验。 说明:防止没有做水平权限校验就可随意访问、操作别人的数据,比如查看、修改别人的订单。 2.【强制】用户敏感数据禁止直接展示,必须对展示数据脱敏。 说明:查看个人手机号码会显示成:158**9119,隐藏中间4位,防止隐私泄露。 3.【强制】用户输入的SQL参数严格使用参数绑定或者 METADATA字段值限定,防止 SQL注入,禁止字符