【问题标题】:How to create security role in weblogic如何在 weblogic 中创建安全角色
【发布时间】:2012-08-10 14:26:56
【问题描述】:

我按照这个教程在 weblogic 中创建安全角色:http://blog.whitehorses.nl/2010/01/29/weblogic-web-application-container-security-part-1/

我在 weblogic 服务器组 RobMon 中创建并使用 pass 进行用户监控。然后我创建这个 xml:

我的 web.xml:

<security-constraint>

    <web-resource-collection>
        <web-resource-name>my-application</web-resource-name>
        <url-pattern>/admin</url-pattern>
    </web-resource-collection>
    <auth-constraint>
        <role-name>RobMon</role-name>
    </auth-constraint>
</security-constraint>

<security-role>
    <role-name>RobMon</role-name>
</security-role>

<login-config>
    <auth-method>FORM</auth-method>
    <form-login-config>
        <form-login-page>/login</form-login-page>
        <form-error-page>/login</form-error-page>
    </form-login-config>
</login-config>

weblogic.xml:

<wls:security-role-assignment>
    <wls:role-name>RobMon</wls:role-name>
    <wls:principal-name>RobMon</wls:principal-name>
</wls:security-role-assignment>

现在我想println的作用和原则:

    Subject subject = Security.getCurrentSubject();
    Set<Principal> allPrincipals = subject.getPrincipals();
    for (Principal principal : allPrincipals) {
        if (principal instanceof WLSGroupImpl) {
            logger.error(principal.getName() + "??????????");
            roles.add(principal.getName());
        }
        if (principal instanceof WLSUserImpl) {
            logger.error(principal.getName() + "!!!!!!!!!!!");
            user = principal.getName();
        }
    }

但这会打印出我想要的其他东西

 admin!!!!!!!!!!!
 Administrators??????????

它应该 println monitor 和 RobMon。怎么了?

【问题讨论】:

  • 你的 weblogic 版本是多少?
  • WebLogic Server 10.3.4.0

标签: java weblogic


【解决方案1】:

在 weblogic.xml 中,您已将角色 RobMon 分配给用户 RobMon,这意味着当用户 RobMon 通过身份验证时,他将被分配 RobMon 角色。

在本教程中,使用主体组用户而不是 RobMon 用户,这意味着该组的所有用户都将在通过身份验证后被分配角色。

检查您的安全领域中是否存在主体 RobMon。我认为您的安全领域中不存在用户 RobMon。您可能希望将角色分配给用户监视器。所以weblogic.wml中的配置应该是:

    <wls:security-role-assignment>
      <wls:role-name>RobMon</wls:role-name>
      <wls:principal-name>monitor</wls:principal-name>
    </wls:security-role-assignment>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-04-12
    • 2015-04-13
    • 2020-01-29
    • 1970-01-01
    • 1970-01-01
    • 2012-08-03
    • 2017-08-10
    相关资源
    最近更新 更多