当前位置: 首页 > article >正文

软件实施交付转运维学习第五天:用户管理和权限管理

今天是软件实施交付转运维学习的第五天。前面四天我们分别了解了运维的基本概念、Linux常用命令。今天我们进入一个既基础又极其重要的模块——用户管理和权限管理。无论是操作系统层面还是应用系统层面用户和权限都是安全的基石。谁可以访问系统能看什么数据能做什么操作这些问题的答案都写在“用户”和“权限”这两个词里。一、为什么用户管理和权限管理如此重要在软件实施和运维过程中我见过不少事故起因往往很简单root账号被随意共享、普通用户被赋予了过高的权限、离职人员的账号没有及时注销……一个好的权限管理实践遵循最小权限原则——只给用户完成其工作所必需的最小权限不多给一分。举个例子一个只负责查询订单数据的运营人员不应该拥有删除订单的权限一个前端应用连接数据库的账号不应该拥有修改表结构的权限。用户管理和权限管理本质上回答三个问题你是谁—— 身份认证Authentication你能做什么—— 授权Authorization你做了什么—— 审计Audit二、Linux系统层面的用户管理作为运维人员首先要掌握操作系统层面的用户管理。以下以最常见的CentOS/RHEL系列为例。1. 用户相关文件Linux中用户信息主要存储在三个文件中/etc/passwd存储用户基本信息注意密码不在这里用x占位/etc/shadow存储加密后的用户密码只有root可读/etc/group存储组信息查看一个用户的详细信息id username # 输出uid1000(admin) gid1000(admin) groups1000(admin),10(wheel)2. 用户管理常用命令创建用户useradd -m -s /bin/bash newuser # -m: 创建家目录 # -s: 指定登录shell设置或修改密码passwd newuser删除用户userdel -r newuser # -r: 同时删除家目录修改用户属性usermod -aG wheel newuser # -aG: 追加到附加组不加-a会覆盖原有组3. 组管理组方便我们批量管理权限groupadd developers # 创建组 usermod -aG developers john # 将john加入developers组 groups john # 查看john所属的组三、Linux权限管理1. 基础权限rwxLinux的权限模型很经典读(r)、写(w)、执行(x)分别对应4、2、1的数值。查看文件权限ls -l 也可以简写成 ll # 输出示例-rw-r--r-- 1 root root 1234 Apr 9 10:00 config.conf # 解读-rw-r--r-- # 第1位-表示文件d表示目录l表示链接 # 第2-4位所有者权限u # 第5-7位所属组权限g # 第8-10位其他用户权限o2. 修改权限用数字方式最常用chmod 755 script.sh # 7421 (rwx)541 (r-x)用符号方式chmod ux script.sh # 所有者增加执行权限 chmod g-w config.conf # 所属组去掉写权限 chmod o-r secret.txt # 其他用户去掉读权限3.修改所有者chown 所有者:所属组 app.log # 同时修改所有者和所属组4. 特殊权限了解即可SUID让普通用户以文件所有者的权限执行该文件仅对可执行文件有效。SGID对文件让用户以文件所属组的权限执行对目录新创建的文件会继承目录的组权限。Sticky Bit主要用于公共目录如 /tmp限制只有文件所有者、目录所有者或 root 才能删除 / 重命名文件防止其他用户误删他人文件。四、应用系统的用户和权限实际操作中我们运维的更多是应用系统如CRM、ERP、OA。这些系统的权限模型虽然各不相同但万变不离其宗。1. 常见的权限模型RBAC模型Role-Based Access Control基于角色的访问控制是目前最主流的设计。它的核心思想是用户 → 角色 → 权限。用户具体的人或程序账号角色权限的集合如“销售经理”、“财务专员”、“系统管理员”权限对某个资源的某个操作如“订单-查看”、“用户-删除”这样做的好处是当有新员工入职时只需给他分配一个角色所有权限自动到位当某个岗位职责调整时只需修改角色包含的权限所有相关用户同步更新。2. 实施与运维中的注意事项在软件实施交付阶段我们需要帮客户梳理好权限体系这往往是项目中最容易被低估的工作量。实施阶段要做的事明确有哪些角色分别需要什么权限哪些权限是默认授予的哪些需要审批超级管理员账号如何管理建议双人持有、操作可审计运维阶段要做的事定期审计用户列表清理僵尸账号员工离职后及时禁用或删除账号这是很多安全事件的源头关注异常登录行为非工作时间、异常IP3. 数据库权限数据库层面同样需要严格控制-- 创建只读用户MySQL示例 CREATE USER readonly_user% IDENTIFIED BY strong_password; GRANT SELECT ON mydb.* TO readonly_user%; -- 应用账号建议只拥有DML权限不要给DDL权限 GRANT SELECT, INSERT, UPDATE, DELETE ON mydb.* TO app_userlocalhost;五、实战小案例假设场景我们部署了一个Web应用需要创建一个专门运行该应用的普通用户并确保日志目录可写但配置文件不可写。# 1. 创建应用用户不创建家目录指定shell为非登录 useradd -r -s /sbin/nologin webapp # 2. 创建应用目录 mkdir -p /opt/webapp/{bin,config,logs} # 3. 设置权限 chown -R webapp:webapp /opt/webapp chmod 755 /opt/webapp/bin chmod 750 /opt/webapp/config # 配置文件只允许webapp用户和组读取 chmod 775 /opt/webapp/logs # 日志目录可写 # 4. 以webapp用户启动应用不能用su - webapp因为nologin su -s /bin/bash -c java -jar /opt/webapp/bin/app.jar webapp六、常见错误与最佳实践常见错误直接使用root运行应用服务777权限遍地开图省事的代价是安全风险账号密码明文写在脚本里离职员工账号不及时清理最佳实践清单日常操作使用普通用户需要提权时用sudo严格配置sudoers不要给ALL(ALL) ALL重要操作通过sudo并配置日志审计定期执行last、lastlog查看登录情况应用之间使用独立账号互不干扰密码策略长度复杂度定期更换七、小结今天的主题是用户管理和权限管理。看似基础但真正做好的团队并不多。作为从实施转岗过来的运维人员我们有一个天然优势我们懂业务。知道谁该做什么、不该做什么这恰恰是设计好权限体系的灵魂。技术层面记住三个核心命令组就够了useradd/usermod/userdel、chmod/chown、passwd。更重要的是建立权限意识——任何时候能用最小权限解决问题就不要用更高权限。本文是“软件实施交付转运维”系列学习笔记的第五篇。从实施到运维不是从零开始而是能力的延伸和视角的转换。如果你也在经历这个转型欢迎一起交流。

相关文章:

软件实施交付转运维学习第五天:用户管理和权限管理

今天是软件实施交付转运维学习的第五天。前面四天我们分别了解了运维的基本概念、Linux常用命令。今天,我们进入一个既基础又极其重要的模块——用户管理和权限管理。无论是操作系统层面,还是应用系统层面,用户和权限都是安全的基石。谁可以访…...

EMQX 5.8.8 多机集群部署避坑指南:为什么你的Docker容器总连不上?

EMQX 5.8.8 多机集群部署避坑指南:为什么你的Docker容器总连不上? 当你第一次尝试在Docker中部署EMQX多机集群时,可能会遇到各种令人抓狂的问题:节点无法通信、集群状态异常、Dashboard无法访问...这些问题往往源于对Erlang分布式…...

快速解密Wii U NUS文件:CDecrypt工具的终极解决方案

快速解密Wii U NUS文件:CDecrypt工具的终极解决方案 【免费下载链接】cdecrypt Decrypt Wii U NUS content — Forked from: https://code.google.com/archive/p/cdecrypt/ 项目地址: https://gitcode.com/gh_mirrors/cd/cdecrypt 对于Wii U游戏开发者和模组…...

Venera漫画应用:开源漫画聚合阅读器的完整实战指南

Venera漫画应用:开源漫画聚合阅读器的完整实战指南 【免费下载链接】venera A comic app 项目地址: https://gitcode.com/gh_mirrors/ve/venera 在数字漫画阅读的广阔世界里,你是否曾为寻找一款既能阅读本地漫画、又能聚合全网资源的应用而烦恼&a…...

OBS StreamFX插件:解锁专业级直播特效的免费神器

OBS StreamFX插件:解锁专业级直播特效的免费神器 【免费下载链接】obs-StreamFX StreamFX is a plugin for OBS Studio which adds many new effects, filters, sources, transitions and encoders! Be it 3D Transform, Blur, complex Masking, or even custom sha…...

深度解析py-scrcpy-client:Python生态下的Android设备控制架构

深度解析py-scrcpy-client:Python生态下的Android设备控制架构 【免费下载链接】py-scrcpy-client 项目地址: https://gitcode.com/gh_mirrors/py/py-scrcpy-client 在移动开发与自动化测试领域,Android设备控制一直是个技术痛点。传统方案依赖A…...

Mybatis 中 Dao 接口(Mapper 接口)的工作原理与重载问题详解

Mybatis 中 Dao 接口(Mapper 接口)的工作原理与重载问题详解 在 Mybatis 开发中,我们通常会为每一个 XML 映射文件编写一个对应的 Dao 接口(又称 Mapper 接口)。很多初学者会好奇:这个接口并没有实现类&…...

护照阅读器在边检自助查验通道——“秒级通关”的核心

边检自助查验通道——“秒级通关”的核心应用概况:在出入境边检区域,自助通关通道已成为大型口岸的“标配”。旅客在闸机处自行扫描护照,系统自动完成信息读取、人证比对,实现快速通关。工作流程(以石家庄边检站为例&a…...

2026中大型组织人事管理痛点剖析及数字化解决方案,有没有值得推荐的人事管理软件?

在数字化转型深化的当下,中大型组织(集团企业、多业态公司等)因组织架构复杂、人员规模庞大、业务场景多元,人事管理面临诸多瓶颈,严重制约组织效能提升与人才战略落地。本文聚焦中大型组织人事管理核心痛点&#xff0…...

“别再买成品缸了,又丑又乱!”

推荐创牌无管件无溢流区鱼缸!缸内干干净净,整块玻璃通透到底,颜值直接封神。没有溢流区,空间大到能随便造景。底滤强排,水质清澈不发臭,换水都一键搞定。客厅、玄关、办公室一放,高级感拉满&…...

Delphi中TDictionary的高效应用与实战技巧

1. 为什么TDictionary是Delphi开发者的秘密武器 第一次接触Delphi的TDictionary时,我还在用TStringList处理键值对数据。当时项目里有个需求要缓存5万条用户配置,用TStringList加载要等整整12秒,界面直接卡死。换成TDictionary后,…...

IM系统核心不是聊天?深入剖析SpringBoot+Netty项目中关系链与群组模块的设计陷阱

IM系统核心不是聊天?深入剖析SpringBootNetty项目中关系链与群组模块的设计陷阱 当大多数人谈论即时通讯系统时,首先想到的是消息收发功能。然而,真正让微信、QQ等产品形成护城河的,并非简单的消息传输能力,而是其背后…...

嵌入模型的维度幻觉:生产级RAG系统记忆的几何学边界

在构建企业级RAG系统或长期运行的AI Agent时,绝大多数架构师都默认一个前提:把文本切成向量,扔进384维、768维甚至1024维的嵌入空间,检索时靠余弦相似度,就能实现“接近人类”的长期记忆能力。随着数据库不断增长&…...

如何快速掌握Elden-Ring-Debug-Tool:艾尔登法环调试工具的完整指南

如何快速掌握Elden-Ring-Debug-Tool:艾尔登法环调试工具的完整指南 【免费下载链接】Elden-Ring-Debug-Tool Debug tool for Elden Ring modding 项目地址: https://gitcode.com/gh_mirrors/el/Elden-Ring-Debug-Tool 在《艾尔登法环》这款充满挑战的黑暗奇幻…...

ESXi6.7.0 U2 直通USB设备给Win10虚拟机的完整指南

1. 环境准备与基础概念 在开始操作之前,我们需要先理解几个关键概念。USB直通是指将物理主机上的USB设备直接分配给虚拟机使用,绕过ESXi系统的中间层管理。这种方式能显著降低输入延迟,特别适合对实时性要求高的外设(如游戏手柄、…...

LVS调度算法怎么选?从零到一搭建一个压测环境,用ab命令告诉你WLC和RR的真实差距

LVS调度算法实战评测:WLC与RR在真实业务压力下的性能对决 当Web服务流量突破单机处理极限时,负载均衡成为系统架构的必选项。作为Linux生态中最成熟的四层负载均衡方案,LVS(Linux Virtual Server)凭借内核级转发的高性…...

卡尔曼滤波器开发实践之二:从理论到代码的五大公式实现解析

1. 卡尔曼滤波器五大公式的工程化理解 卡尔曼滤波器就像一位经验丰富的导航员,在充满噪声的数据海洋中为我们指引方向。我在实际项目中多次使用它来处理传感器数据,发现真正理解这五大公式的工程意义比死记硬背数学推导更重要。 1.1 预测与更新的双人舞 …...

基于STM32LXXX的数字电位器(TPL1401DSGR)驱动应用程序设计

一、简介: TPL1401DSGR 是 TI 带输出缓冲器的数字电位器,相比普通数字电位器,其缓冲输出能保证负载改变时电压不跌落,非常适合作为可编程电压源使用。 二、主要技术特性: 抽头数:256(8bit 分辨率) 接口:I2C(支持 1MHz Fast+ 模式) 工作电压:1.8V ~ 5.5V(与 STM…...

你的SSH密钥可能已经过期了运

引言 在现代软件开发中,性能始终是衡量应用质量的重要指标之一。无论是企业级应用、云服务还是桌面程序,性能优化都能显著提升用户体验、降低基础设施成本并增强系统的可扩展性。对于使用 C# 开发的应用程序而言,性能优化涉及多个层面&#x…...

“advisor复合电源模型:采用新增构型方法修改的优越性”

advisor复合电源模型。 采用新增构型方法修改的复合电源模型,比advisor书上那种在纯电基础上修改好很多,因为保留了自带的纯电模型,所以可方便比较有无超级电容的影响。 模型运行完全正常 无报错。搞过混合动力系统仿真的朋友都知道&#xf…...

从查重焦虑到 AIGC 检测双重突围:虎贲等考 AI 深度重构文本,降重 + 去 AI 痕迹一体化解决方案

一、传统改写工具为何失效?底层逻辑决定效果上限 在大量用户的实际使用反馈中,传统降重与去 AI 工具普遍存在三大致命缺陷,这也是为什么很多人越改越难通过的根本原因。第一,仅停留在文字表层替换,不具备语义理解能力…...

基于STM32LXXX的数字电位器(AD5290YRMZ10)驱动应用程序设计

一、简介: AD5290是一款支持15V高压的数字电位器,采用SPI接口控制。相比普通数字电位器,它最大的优势是支持30V单电源或15V双电源供电,适合工业控制、可编程电源等需要高压调节的应用场景。 二、主要技术特性: 参数 值 说明 抽头数 256 8位分辨率,0~255可编程 端到端电阻…...

工业领域再发力,麒麟信安树立自主创新基础软件规模化应用又一新标杆

当前,随着我国工业数字化、智能化转型持续深入,基础软件的自主创新实践成为保障产业链安全的关键一环。麒麟信安作为基础软件代表厂商,正加速在工业关键场景的纵深布局,已与上下游厂家联合推进工业软硬件全栈自主解决方案&#xf…...

终极指南:在UE5中构建专业级角色动画系统

终极指南:在UE5中构建专业级角色动画系统 【免费下载链接】ALS-Community Replicated and optimized community version of Advanced Locomotion System V4 for Unreal Engine 5.4 with additional features & bug fixes 项目地址: https://gitcode.com/gh_mi…...

OBS Multi RTMP插件:免费开源的多平台直播终极解决方案

OBS Multi RTMP插件:免费开源的多平台直播终极解决方案 【免费下载链接】obs-multi-rtmp OBS複数サイト同時配信プラグイン 项目地址: https://gitcode.com/gh_mirrors/ob/obs-multi-rtmp 想要实现多平台直播却苦于繁琐的操作流程?OBS Multi RTMP…...

AI 日报 - 2026年4月10日

🔬 科技类 5 条1. Anthropic 年化收入首超 OpenAI,4个月从90亿飙到300亿美元这速度真的让人有点惊呆——Anthropic 的年化收入在短短4个月内从90亿美元狂飙到300亿美元,首次反超 OpenAI(当前约250亿)。更有意思的是&am…...

玻璃K值如何测试?

玻璃K值如何测试? 玻璃K值测试方法有测试+计算法、防护热板法/热流计法、标定热箱法、现场测试方法等,标准有JGJ/T 151、GB/T 2680、GB/T 22476、GB/T 10294、GB/T 8484、GB/T 36261等;经常有朋友咨询该用哪种方法、哪个标准?本期做个梳理,不妥之处敬请指正! 1、测试+计…...

从零构建8086汇编IO交互程序:环境搭建、中断调用与模块化设计

1. 环境搭建:让8086汇编在现代系统上跑起来 第一次接触8086汇编时,最让我头疼的不是汇编语法本身,而是怎么让这些古董代码在现代电脑上运行。我的主力机是Win11 64位系统,而8086汇编需要16位DOS环境——这就像试图在智能手机上运行…...

马普所:生命蛋白质宇宙聚类

摘要 将生命之树中的数十亿蛋白质进行关联分析,仍是比较生物圈基因组学与人工智能驱动结构预测领域的核心难题。本文提出1种级联式超快速聚类方法DIAMOND DeepClust,可实现行星尺度的蛋白质空间组织,支持万亿级序列分析&#xff…...

Oracle数据库中,将JSON字符串转换为多行数据

在Oracle数据库中,在将JSON字符串转换为多行数据时,通常可以使用JSON函数与一些SQL技巧来实现。下面是一些常见的方法来处理这个问题:方法1:使用JSON_TABLE函数JSON_TABLE 函数可以将JSON数组转换为关系表。例如,如果有…...