Keycloak 认证:密码与 OTP 的综合应用
1. 认证流程初探
首先,我们可以尝试以“alice”的身份登录 Keycloak 账户控制台。具体操作是,打开浏览器,访问 http://localhost:8080/realms/myrealm/account ,然后使用用户凭证进行登录。在对领域进行身份验证时,你会注意到用户的用户名和密码是分多个步骤获取和验证的。
Keycloak 允许通过创建或更改认证流定义来自定义用户和客户端的认证方式,从而使其适应不同的认证需求。
2. 密码认证
2.1 密码认证基础
密码认证是一种非常流行的用户认证方法,易于实现,也是大多数终端用户在认证时习惯使用的方式。然而,这种简单的凭证类型存在一些缺点和弱点,例如密码容易被盗取或泄露,易受网络钓鱼攻击,而且有些用户不太在意密码强度,这会影响系统的安全性。同时,为了强制用户使用强密码而设置的策略可能会使密码变得复杂,难以记忆和输入,影响用户体验。
Keycloak 采用了一些常见的最佳实践来确保密码在传输和存储过程中的安全性。它使用强密码哈希算法(默认是 PBKDF2)来防止暴力破解攻击,并安全地存储密码。当为用户设置密码时,密码值会与一个安全随机数(盐)结合,然后进行多次哈希运算,生成难以破解的派生密钥。存储时,密码不会以明文形式保存,而是存储派生密钥和必要的元数据,以便后续验证密码。
Keycloak 预配置为使用 HMAC - SHA - 256 进行密码哈希,迭代次数为 27,500。在配置密码策略时,你可以使用更强的哈希算法(如 HMAC - SHA - 512)或更
超级会员免费看
订阅专栏 解锁全文
8667

被折叠的 条评论
为什么被折叠?



