导入
安全入门
了解安全性的概述及其常见类型。
概述
安全性在软件架构中指的是为保护系统及其数据免受未经授权的访问或攻击而实施的各种措施和实践。在软件架构设计中,需要关注以下几个关键的安全方面:
访问控制
访问控制是指用于限制未授权用户或进程对系统或其资源访问的机制。访问控制可以在多个层级上实现,例如网络层、系统层或应用层。
例如,系统可以配置防火墙来控制网络访问,仅允许来自授权来源的流量通过。此外,系统还可以设置用户账户和密码,以控制对系统内特定资源或功能的访问权限。
身份认证
身份认证是确认用户或进程身份的过程,以确保其有权访问系统或相关资源。身份认证可通过多种方式实现,包括密码、令牌以及生物识别技术。
...
一个典型的认证示例是用户输入用户名和密码以登录网站或应用程序。系统会将输入的凭证与存储的数据进行比对,验证用户身份后才允许其继续操作。
权限授权
权限授权是指根据用户或进程的权限和特权,决定是否授予其对系统或资源的访问权限。授权通常与身份认证配合使用,因为必须先确认身份,才能判断其具备哪些权限。
例如,在企业内部的软件系统中,部分员工可能被授权查看并编辑特定数据,而其他员工则仅能查看。这样可以确保敏感信息受到保护,只有经过授权的人员才能访问或修改数据。
身份认证 vs. 权限授权
| 身份认证 | 权限授权 |
|---|---|
| 验证凭证的真实性 | 授予或拒绝访问权限 |
| 通过密码、一次性验证码(OTP)和生物识别等方式实现 | 通过安全团队维护的配置规则实现 |
| 对用户可见 | 对用户不可见 |
| 用户可部分修改(如修改密码) | 用户无法自行更改 |
| 数据通过身份令牌传递 | 数据通过访问令牌传递 |
加密
加密是将数据转换为不可读形式的过程,以防止未经授权的访问或篡改。加密可用于保护数据在传输过程中(如在网络中传输时)或处于静止状态(如存储在磁盘或数据库中)的安全。
...
明文转为密文
例如,信用卡信息和登录凭据会被加密为无法辨识的代码,只有拥有相应解密密钥才能还原。这有效防止了数据被非法获取,为关键信息提供了额外的安全保障。