直接使用 API 从我的 Keycloak 前端发出用户注册请求

Make user registration requests from my frontend in Keycloak using its API directly

在我的 Angular 应用程序(前端)中,用户可以按以下方式登录:

现在的问题是:如何以同样的方式启用用户注册,这意味着,我希望用户可以:

顺便说一句:我不想使用用户管理API。

您可以使用 Keycloak Admin REST API 注册新用户。切记不要粗心暴露。

关于你的问题,涉及到身份验证,你可以注册一个Keycloak OIDC客户端。 OIDC 提供了一个 bunch of resources 您可以使用。

如果您将应用程序注册为使用 OIDC 的 Keycloak 客户端直接授权。基本上“直接授予”意味着您只需从 POST 到 /realms/{realm-name}/protocol/openid-connect/token.

即可获得访问令牌

关于直接授权的文档分散在 Keycloak 文档中,一些细节只能在 OIDC RFC 中找到;所以我找到了你 this page that ties everything together.

再次小心!这可能很明显,但不要将您的 Angular 应用程序变成 OIDC 客户端,否则黑客会窃取您的 Keycloak 客户端的凭据。确保让您的 Angular 应用程序调用某个服务器,您将在其中实施必要的安全机制来阻止滥用您的客户端(例如使用验证码)。