温馨提示×

Ubuntu上WebLogic的权限管理如何实现

小樊
34
2025-12-24 13:48:55
栏目: 智能运维

Ubuntu上WebLogic权限管理实现

一 操作系统层最小权限

  • 创建专用的系统账号与组,避免使用root运行 WebLogic。示例:
    • 创建组:sudo groupadd weblogic
    • 创建用户:sudo useradd -g weblogic -m -d /home/weblogic weblogic
    • 设置密码:sudo passwd weblogic
  • 将安装与域目录的所有权赋予 weblogic,并设置合理权限:
    • 赋权:sudo chown -R weblogic:weblogic /opt/weblogic /u01/domains
    • 权限建议:目录750,文件640(仅属主与同组可读写,其他不可访问)
  • 以 weblogic 用户启动:
    • 交互启动:/u01/domains/base_domain/bin/startWebLogic.sh
    • 或使用 systemd 服务(ExecStart 以 weblogic 运行)
  • 运行期自检:ps -ef | grep -i weblogic 应显示由 weblogic 用户启动的进程。以上做法符合“运行账号权限最小化、目录属主正确、禁止 root 启动”的安全基线要求。

二 WebLogic 控制台内置用户与角色

  • 登录控制台(默认端口通常为7001):http://<主机>:7001/console
  • 进入安全领域:域结构 → 安全领域 → myrealm → 用户和组
    • 新建用户(如:deployer、monitor),设置强口令
    • 将用户加入内置组:Administrators、Deployers、Monitors、Operators
  • 典型内置组与权限要点(不同版本名称可能略有差异):
    • Administrators:全域最高权限,配置、部署、启停均可
    • Deployers:部署/取消应用,可浏览配置,通常不可改核心服务器配置
    • Monitors:只读监控,查看状态与指标
    • Operators:启停服务器,通常不可部署
  • 建议做法:按职责创建账号并加入相应组,避免多人共用高权限账号。

三 基于 WLST 的自动化用户与角色配置

  • 使用 WLST 连接管理服务器并批量化配置(示例):
    connect('weblogic','weblogic123','t3://127.0.0.1:7001')
    createUser('appdeploy','StrongPass!23')
    createGroup('AppDeployers')
    assignUserToGroup('appdeploy','AppDeployers')
    # 将组加入全局角色(示例:Deployer 角色)
    edit()
    startEdit()
    cd('/SecurityConfiguration/base_domain/Realms/myrealm/GlobalRoles/Deployer')
    cmo.addCondition(GroupCondition('AppDeployers'))
    activate()
    disconnect()
    
  • 适用场景:环境初始化、CI/CD 自动化交付、批量账号生命周期管理。WLST 亦可用于查询、禁用过期账号与审计配置。

四 安全加固与运维要点

  • 控制台安全
    • 重命名或限制访问 /console,仅在内网开放,必要时启用反向代理与 IP 白名单
    • 删除示例应用与无用资源,减少攻击面
  • 口令与账号策略
    • 强口令策略(长度、复杂度、定期更换),禁用默认/共享账号,及时清理过期账号
  • 运行与监听
    • 仅开放必要端口(如 7001/7002),使用防火墙限制来源
    • 启用 SSL/TLS 保护管理通道与业务流量
  • 日志与审计
    • 启用域与审计日志,集中采集并保留足够周期,定期审计登录与配置变更
  • 启动与权限复核
    • 禁止以 root 启动;定期核查进程属主与目录权限,确保最小权限原则落地。

0