我在 Symfony 项目中定义了 get Keycloak 方法。
在提取密码策略列表的数组问题上,我得到了例外结果。目前它只设置了“非用户名”规则:
我在文档中的 keycloak 中找不到任何其他端点,我可以在其中将密码字符串作为参数传递,并查看它是否满足password policies
.
我将提供GET
返回我刚才描述的内容的函数。我认为如果可以修改它以提供密码字符串,它将完成工作。
public function validateKeycloakPassword()
{
$options = [
'headers' => $this->getAuthJsonHeaders()
];
try {
$endpoint = sprintf('auth/admin/realms/%s/', $this->realm);
return $this->request('GET', $endpoint, $options);
} catch (\Exception $e) {
$this->exception('Can`t get password policy information on Keycloak. ' . $e->getMessage());
}
}
在我的控制器中,端点:
/**
* @Route("/check", name="check")
*/
public function validatePassword()
{
$violations = $this->service->validateKeycloakPassword();
return $violations['passwordPolicy'];
}
总结一下:
keycloak 中是否有任何端点可以传递我的密码变量并检查它是否符合password policies
可能使用PUT
方法中定义的要求。