3.4. 通过提高安全性重新获得对域的访问权限
对于丢失了 admin 访问权限的域,可以强制使用免密码、OTP 或其他高级身份验证方法。在这种情况下,需要创建 admin 服务帐户来恢复对域的 admin 访问权限。创建服务帐户后,需要针对红帽构建的 Keycloak 实例进行身份验证来执行所有必要的操作:
bin/kcadm.[sh|bat] config credentials --server http://localhost:8080 --realm master --client <service_account_client_name> --secret <service_account_secret>
接下来,检索 credentialId
。在本例中,OTP 凭证是相关的凭证。使用以下命令获取 CredentialRepresentation
对象的数组,并查找 类型为
otp
的数组:
bin/kcadm.[sh|bat] get users/{userId}/credentials -r {realm}
最后,检索的 ID 可用于删除高级验证方法(在我们的 case, OTP 中):
bin/kcadm.[sh|bat] delete users/{userId}/credentials/{credentialId} -r {realm}