安全可用
作为 IAM 系统,我们深知安全可用性是产品的根本,也是企业用户信赖和使用的关键。在我们的设计和开发过程中,我们将安全性置于首要位置,并致力于提供简单、直观且安全的用户体验。
密码安全
密码支持 bcrypt
加密算法
bcrypt
是一种密码哈希函数,旨在保障密码存储的安全性。它采用了基于 Blowfish 密码散列函数的密码哈希算法,并结合了盐(salt)的概念,以提高密码的安全性和抵御暴力破解攻击的能力。
bcrypt
的核心特性和优势包括:
-
密码安全性:
bcrypt
基于 Blowfish 密码散列函数,这是一种被广泛认可且安全性高的加密算法。它提供了足够的安全性,能够有效地抵御常见的密码破解技术,包括彩虹表攻击和暴力破解攻击。 -
加盐机制:
bcrypt
在哈希密码之前,会将随机生成的盐值与密码进行混合。盐的引入增加了密码哈希的复杂性,即使相同的密码在数据库中存储的哈希值也会因为不同的盐而产生不同的结果。这种加盐机制有效地防止了彩虹表攻击,使得破解者需要针对每个哈希值分别进行攻击。 -
可调节的计算成本:
bcrypt
允许调节所谓的 cost factor,即计算哈希值所需的迭代次数。通过增加 cost factor,可以增加密码哈希函数的计算成本,从而增加了破解密码的难度。这种灵活性使得开发者可以根据实际需求平衡安全性和性能之间的权衡。 -
可移植性: 由于
bcrypt
是一个标准的密码哈希函数,并且已经被广泛实 现和应用于多种编程语言和平台,因此它具有很高的可移植性。无论是在 Web 开发、移动应用还是企业级系统中,都可以轻松地集成和使用bcrypt
。 -
简单易用: 尽管
bcrypt
提供了强大的密码哈希安全性,但是对于开发者来说,使用bcrypt
也是相对简单的。通常只需调用相应的库函数即可完成密码的哈希处理,无需过多的复杂配置和实现细节。
密码支持 sm3 国密加密算法
SM3 是中国国家密码管理局发布的密码杂凑算法,属于哈希函数的一种。
SM3 具有以下优势:
-
安全性高: SM3 是经过严格的密码学分析和安全性评估的,其设计考虑了当前密码学攻击的各种技术和手段,能够抵御常见的密码攻击,如碰撞攻击、预映像攻击等。因此,SM3 在安全性方面能够满足大多数应用场景的要求。
-
国际标准兼容性: SM3 算法是中国国家密码管理局发布的密码杂凑算法标准,符合国际密码学标准化组织的相关标准和规范。它与国际上常用的哈希函数算法(如 SHA-256、SHA-3 等)兼容,并且可以作为其替代方案在各种应用中使用。
-
性能优越: SM3 在设计时考虑了在硬件和软件上的实现效率,采用了高效的算法结构和优化技术,具有较快的运算速度和较 低的资源消耗。这使得 SM3 在各种计算平台上都能够以较高的性能进行哈希计算。
-
密码杂凑标准化: SM3 是中国国家密码管理局发布的密码杂凑算法标准,得到了政府和行业的广泛认可和应用。这使得 SM3 成为了中国国内各种密码应用系统的首选算法,为密码安全提供了可靠的保障。
-
适用性广泛: 由于其安全性高、性能优越、国际标准兼容性好等特点,SM3 算法被广泛应用于各种密码学应用场景,包括数字签名、消息认证码、证书认证、密钥派生等领域。它在网络通信、电子商务、金融支付、政府信息安全等领域都有重要的应用价值。
数据加密
对于数据库内敏感字段数据,支持多种加密算法 SHA256/512、 AES256、MD5、国密算法,对敏感数据进行加密存储。
密码策略
为不同用户群体细粒度配置密码策略规则可优化系统安全性和用户体验。通过此优化,管理员可根据不同用户需求、权限和风险程度定制密码策略,如密码复杂度、长度、过期时间等。这种个性化设置提高了系统的灵活性和安全性,减少了管理成本,同时满足了用户的实际需求,增强了用户对系统的信任感。
密码策略功能的优势:
-
提高密码安全性: 强制用户设置符合一定复杂度要求的密码,例如长度、包含大写字母、小写字母、数字和特殊字符等。可以降低密码被猜测或者暴力破解的可能性,从而提高密码的安全性。
-
减少密码泄露风险: 通过密码策略功能,可以设置密码过期时间,强制用户定期更改密码。这样即使密码被泄露,也有限制其有效期的机制,减少密码泄露风险。
-
防范社会工程学攻击: 可以禁止用户设置过于简单的密码,如常见的密码、重复字符等。可以防止利用社会工程学手段猜测或者获取用户密码的攻击。
-
符合合规要求: 许多行业和政府机构对密码安全性有严格的要求,如金融、医疗、政府部门等。通过实施密码策略,可以确保系统满足合规要求,避免因密码泄露导致的法律责任和业务损失。
-
提升用户密码意识: 通过设置密码复杂度要求、密码过期提醒等方式,增强用户对密码安全的意识。用户在设置和管理密码时会更加重视密码的安全性,从而减少密码被攻击的可能性。
认证策略
支持细粒度配置登录认证相关策略。用于控制谁可以登录、谁不能登录,在何种环境下允许用户登录,在何种环境下不允许用户登录,是否需要MFA验证。
多因素认证
二次认证,也称为多因素认证,是一种身份验证方法,要求用户在登录或访问敏感信息时除了提供密码外,还需要提供第二个或多个验证因素,以增加身份验证的安全性,这种方法有效地降低了恶意攻击者利用盗取或猜测密码的方式入侵系统的风险。
目前 TOPIAM 支持如下二次认证方式:
-
短信验证码: 系统向用户注册的手机号发送一次性验证码,用户需要在登录时输入正确的验证码。
-
手机应用生成的动态验证码: 用户在手机上安装认证应用,每次登录时生成一个动态验证码。
-
硬件令牌: 用户携带一种物理硬件设备,如 USB 密钥或智能卡,需要在登录时插入或使用该设备生成验证码。
-
生物特征识别: 系统通过扫描用户的指纹、虹膜或人脸等生物特征进行身份验证。
连续登录失败锁定
连续登录失败锁定可以有效防止恶意用户使用暴力破解技术尝试多次登录,在一定次数的失败尝试后,系统会自动锁定账户,使得进一步尝试登录变得无效。通过限制连续登录失败的次数和锁定账户的时长,可以降低系统受到暴力破解的风险,增加系统的安全性。符合安全标准和法规。
这一机制具有以下优势:
-
防止暴力破解: 连续登录失败锁定可以有效防止暴力破解攻击。攻击者通常会使用自动化工具进行大量的登录尝试,连续登录失败锁定可以限制攻击者的尝试次数,增加破解密码的难度。
-
保护账户安全: 连续登录失败锁定可以保护用户账户安全,防止被未经授权的人员尝试登录用户账户。即使密码被泄露,攻击者也无法通过大量的尝试来破解密码。
-
降低账户被盗风险: 连续登录失败锁定减少了账户被盗的风险。即使攻击者获得了账户的用户名和密码,他们也无法通过大量的登录尝试来获取对应账户的访问权限。
细粒度行为审计
对系统中的用户行为、管理员进行详细、精细的记录和监控,包括管理员用户、普通用户的操作、访问、修改等行为,以及相关的时间、地点、终端信息等。通过对用户行为的审计和监控,实现对系统安全性、合规性和运行状态的全面把控和管理。
细粒度行为审计具有多方面的优势和好处:
-
安全威胁检测: 细粒度行为审计可以实时监测用户的行为,及时发现异常活动和安全威胁,并采取相应的响应措施,帮助防止潜在的安全事件和数 据泄露。
-
减少安全风险: 帮助组织识别和弥补系统中的安全漏洞和风险,提高系统的整体安全水平,减少潜在的安全威胁和攻击风险。
-
合规性要求满足: 许多法规、标准和合规性要求(如GDPR、HIPAA等)要求对用户行为进行详细审计和记录。通过细粒度行为审计,组织可以满足这些合规性要求,避免可能的法律责任和罚款。
-
追溯与调查能力: 细粒度行为审计记录了用户在系统中的每一个操作和行为,可以帮助组织追溯和调查安全事件、数据泄露等问题,分析事件原因并采取有效措施。
-
增强监管能力: 通过审计日志分析用户行为,管理人员可以全面监管系统的运行情况,实现对员工和系统操作的有效管理和控制。
-
优化访问控制策略: 通过审计日志分析用户行为,可以了解用户的访问习惯和需求,帮助优化访问控制策略,提高系统的安全性和效率。