Keycloak 迁移哈希密码
Keycloak migrating hashed passwords
我正在尝试将用户从旧的 Drupal 6 CMS 迁移到 Keycloak。我想迁移使用旧密码的用户,然后将 "Update Password" 要求的操作分配给他们的个人资料。
但是迁移密码似乎有问题,因为我只能以散列形式访问它们。
密码使用不加盐的 MD5 算法进行哈希处理。
我已经尝试根据此页面迁移它们:
https://lists.jboss.org/pipermail/keycloak-user/2015-December/004212.html
这是我要发送到 Keycloak REST API 的 JSON:
{
"hashedSaltedValue" : "password-hash",
"algorithm" : "restcomm-md5",
"type" : "password",
}
这是我尝试过的事情的列表
- 包含一个 NULL 哈希值
- 包含 0 hashIteration 值
- Base64 编码哈希
- 将哈希值转换为二进制,然后对其进行 Base64 编码
有没有人有幸使此功能正常运行?
Keycloak reset-password api 是,你想用什么?
使用 "reset-password" api,我相信它只接受纯文本密码,这意味着,你不能用已经散列的密码值重置密码。
如果您使用创建用户api,那么您可以添加哈希值作为密码。
我正在使用带有 Keycloak 的 Aerobase 并尝试使用重置密码 api 更新密码,它不适用于散列密码,它只适用于纯文本密码,然后存储散列密码。
如果有人使用哈希密码成功重设密码,请在此处发表评论!
以下 curl 命令帮我迁移了旧的散列密码。将 {hashedSaltedValue}
替换为您的散列密码,将 {salt}
替换为您的盐。
token="..."
curl 'http://keycloak-http/auth/admin/realms/testrealm/users/f:60f0ff50-2cc5-492d-8222-04ac0a9964e1:217b93e8-2830-4392-83e3-9feceea94575' \
-X PUT \
-H "Authorization: $token" \
-H "Content-Type: application/json" \
--data '{"credentials": [ { "algorithm": "pbkdf2-sha512", "hashedSaltedValue": "{hashedpassword}", "hashIterations": 30000, "type": "password", "salt":"{salt}"}]}'
参数 hashedSaltedValue 等已弃用,keycloak 10 和更新版本将记录弃用警告。
有一个新的CredentialRepresentation defined where you put JSON into the strings for attributes secretData and credentialData。
我正在尝试将用户从旧的 Drupal 6 CMS 迁移到 Keycloak。我想迁移使用旧密码的用户,然后将 "Update Password" 要求的操作分配给他们的个人资料。
但是迁移密码似乎有问题,因为我只能以散列形式访问它们。
密码使用不加盐的 MD5 算法进行哈希处理。 我已经尝试根据此页面迁移它们: https://lists.jboss.org/pipermail/keycloak-user/2015-December/004212.html
这是我要发送到 Keycloak REST API 的 JSON:
{
"hashedSaltedValue" : "password-hash",
"algorithm" : "restcomm-md5",
"type" : "password",
}
这是我尝试过的事情的列表
- 包含一个 NULL 哈希值
- 包含 0 hashIteration 值
- Base64 编码哈希
- 将哈希值转换为二进制,然后对其进行 Base64 编码
有没有人有幸使此功能正常运行?
Keycloak reset-password api 是,你想用什么? 使用 "reset-password" api,我相信它只接受纯文本密码,这意味着,你不能用已经散列的密码值重置密码。
如果您使用创建用户api,那么您可以添加哈希值作为密码。
我正在使用带有 Keycloak 的 Aerobase 并尝试使用重置密码 api 更新密码,它不适用于散列密码,它只适用于纯文本密码,然后存储散列密码。
如果有人使用哈希密码成功重设密码,请在此处发表评论!
以下 curl 命令帮我迁移了旧的散列密码。将 {hashedSaltedValue}
替换为您的散列密码,将 {salt}
替换为您的盐。
token="..."
curl 'http://keycloak-http/auth/admin/realms/testrealm/users/f:60f0ff50-2cc5-492d-8222-04ac0a9964e1:217b93e8-2830-4392-83e3-9feceea94575' \
-X PUT \
-H "Authorization: $token" \
-H "Content-Type: application/json" \
--data '{"credentials": [ { "algorithm": "pbkdf2-sha512", "hashedSaltedValue": "{hashedpassword}", "hashIterations": 30000, "type": "password", "salt":"{salt}"}]}'
参数 hashedSaltedValue 等已弃用,keycloak 10 和更新版本将记录弃用警告。
有一个新的CredentialRepresentation defined where you put JSON into the strings for attributes secretData and credentialData。