温馨提示×

centos上weblogic如何管理用户权限

小樊
33
2025-12-11 21:11:39
栏目: 智能运维

在 CentOS 上管理 WebLogic 用户权限

一 操作系统层安全基线

  • 创建专用的系统用户与组,WebLogic 进程以非 root 运行,降低提权风险:
    • 创建组与用户:sudo groupadd weblogicsudo useradd -g weblogic weblogicsudo passwd weblogic
    • 目录与权限:将域目录(如 /u01/app/oracle/middleware/user_projects/domains/your_domain)属主设为 weblogic:weblogic,常用权限为 750/755(目录 755、文件 644),避免使用 777
    • 启动与切换:使用 sudo su - weblogic 切换到 weblogic 用户后启动服务,避免以 root 直接启动
  • 基础加固(可选但强烈建议):
    • 防火墙仅开放必要端口(如 7001/7002/5556 等),示例:firewall-cmd --zone=public --add-port=7001/tcp --permanent && firewall-cmd --reload
    • 更改默认管理端口,避免被脚本扫描
    • 启用日志与审计,定期审计登录与关键操作
    • 保持 WebLogic 与 JDK 的及时更新与补丁应用

二 控制台与 WLST 的用户 组 角色与策略

  • 核心概念与路径
    • 安全领域(Security Realms):默认 myrealm
    • 认证提供者(Authentication Providers):默认 DefaultAuthenticator
    • 用户与组(Users/Groups):在 myrealm 中维护
    • 角色与策略(Roles/Policies):在 myrealm 的 RolesPolicies 页配置,策略绑定到资源(如应用、EJB、Web 资源等)
  • 控制台操作要点
    • 创建用户与组:进入 Security Realms > myrealm > Users and Groups,新建用户、组,必要时加入内置组(如 Administrators
    • 口令策略:进入 Security Realms > myrealm > Providers > DefaultAuthenticator > Provider Specific,设置 Minimum Password Length ≥ 8,并配置复杂度与锁定策略(如 Lockout Enabled=true、Lockout Threshold=10、Lockout Duration=300 秒)
    • 角色与策略:在 myrealm > Roles 定义角色(可按组或用户),在 myrealm > Policies 为具体资源授予角色访问权限(如 URL 模式、EJB 方法、JMS 队列等)
  • WLST 自动化示例(连接后执行)
    • 连接域:connect('weblogic','weblogic123','t3://127.0.0.1:7001')
    • 创建用户与组:createUser('appuser','App@2025','')createGroup('appdev','')
    • 加入组:addMemberToGroup('appdev','appuser')
    • 创建角色(示例全局角色):createRole('AppDeveloperRole')
    • 授权(示例将全局角色授予组):assignRoleToGroup('AppDeveloperRole','appdev')
    • 提交更改:save()activate()
    • 说明:WLST 适合批量、可重复的安全基线落地与自动化运维

三 应用与资源的访问控制

  • Web 应用目录浏览限制
    • 在应用的 WEB-INF/weblogic.xml 中关闭目录索引:
      <weblogic-web-app>
        <container-descriptor>
          <index-directory-enabled>false</index-directory-enabled>
        </container-descriptor>
      </weblogic-web-app>
      
  • 登录与会话安全
    • 在控制台为关键资源设置访问控制策略(URL 模式、HTTP 方法等),仅授予必要角色
    • 结合 Web 容器与应用的会话超时配置,降低会话劫持风险
  • 服务器与网络层
    • 仅开放必要端口,限制来源 IP(配合防火墙/安全组)
    • 启用 SSL/TLS 保护管理通道与业务流量

四 运维与应急操作

  • 免密启动与凭据管理
    • 在域目录 servers/AdminServer/security/ 下创建 boot.properties,写入 username=password=,首次启动自动加密,避免明文写在命令行
  • 忘记管理员密码或鉴权异常
    • 停止域,备份并清理 servers/AdminServer/data/ldapservers/AdminServer/security/boot.properties
    • 使用 weblogic.jar 工具重建鉴权文件:
      cd $DOMAIN_HOME
      java -cp $WL_HOME/wlserver/server/lib/weblogic.jar \
        weblogic.security.utils.AdminAccount <新管理员> <新密码> \
        $DOMAIN_HOME/security/DefaultAuthenticatorInit.ldift
      
    • 重新启动后,按需恢复或重置其他用户口令
  • 审计与日志
    • 在控制台启用安全审计与访问日志,记录账号、时间、来源 IP、成功/失败结果,便于合规与溯源

0