在WildFly-8.1中全局设置missing-method-permissions-deny-access

时间:2014-11-24 14:33:05

标签: security ejb-3.1 wildfly

我目前正在使用以下jboss-ejb3.xml切换行为,以便为所有用户/角色提供方法。

<?xml version="1.1" encoding="UTF-8"?>
<jboss:ejb-jar xmlns:jboss="http://www.jboss.com/xml/ns/javaee"
               xmlns="http://java.sun.com/xml/ns/javaee"
               xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
               xmlns:s="urn:security:1.1"
               xsi:schemaLocation="http://www.jboss.com/xml/ns/javaee http://www.jboss.org/j2ee/schema/jboss-ejb3-2_0.xsd http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/ejb-jar_3_1.xsd"
               impl-version="2.0" version="3.1">
    <assembly-descriptor>
        <s:security>
            <s:missing-method-permissions-deny-access>false</s:missing-method-permissions-deny-access>
        </s:security>
    </assembly-descriptor>
</jboss:ejb-jar>

我喜欢为我的所有ejbs全局设置此行为,而不在每个模块中提供本地jboss-ejb3.xml。不幸的是,我无法在此文件之外的某处找到提示。

我的问题是:是否有一个文件可以将此模式设置为EAR文件中的所有包含模块?

编辑:一点点补充:http://wildscribe.github.io/Wildfly/8.1.0.Final/subsystem/ejb3/index.html表明它显然是错误的。默认似乎是default-mssing-method-permissions-deny-access设置为true

1 个答案:

答案 0 :(得分:4)

ejb3子系统中有 default-missing-method-permissions-deny-access 属性。只需将其设置为 false

您可以使用JBoss CLI实例:

$JBOSS_HOME/bin/jboss-cli.sh -c /subsystem=ejb3:write-attribute(name=default-missing-method-permissions-deny-access, value=false)

如果您不使用JBOSS_HOME环境变量,请将$JBOSS_HOME替换为WildFly安装的完整路径。