Angular Keycloak登录(静音)

时间:2018-05-01 16:29:37

标签: javascript angular frontend keycloak

有没有办法使用' userName'和密码'直接来自角度/客户端应用程序?

例如这样的事情?

Keycloak.init({username: 'guest', password: 'abc'});

1 个答案:

答案 0 :(得分:4)

官方keycloak javascript adapter不支持$xml.Save($serverXml) 流程。

可以使用除默认值(Resource Owner Password Credentials流量)以外的流初始化适配器。

Authorization Code

flow - 设置OpenID Connect流程。有效值为标准值,隐式值或混合值。

请注意,有正当理由使用keycloak.init({ flow: 'implicit' }) 流程。

来自keycloak documentation

  

资源所有者密码凭据,简称为“直接授予”   Keycloak,允许交换令牌的用户凭据。不是   建议使用此流程,除非您绝对需要。例子   遗留应用程序和命令行可能有用   接口

     

使用此流程有许多限制,包括:

     
      
  • 用户凭据公开给应用程序

  •   
  • 应用程序需要登录页面

  •   
  • 应用程序需要了解身份验证方案

  •   
  • 对身份验证流程的更改需要更改应用程序

  •   
  • 不支持身份代理或社交登录

  •   
  • 不支持流量(用户自行注册,必需的操作,   等)

  •   

其他资源:
Why the Resource Owner Password Credentials Grant Type is not Authentication nor Suitable for Modern Applications
How secure is the OAuth2 "Resource Owner Password Credential" flow for single-page apps?

如果您仍然希望/必须使用Resource Owner Password Credentials流程,则应该可以自己实现它。您可以找到实现自己的适配器所需的所有keycloak特定详细信息{。{3}}。