1.keycloak~自定义rest接口2.keycloak~docker部署https的keycloak使用自定义证书3.keycloak~扩展事件机制,集成kafka中间件4.keycloak~nginx实现的https转发5.keycloak~使用JDBC_PING实现k8s里的高可用6.keycloak~为认证提供者添加配置项7.keycloak~再说session和token8.keycloak~JWT各字段说明及扩展字段的方法9.keycloak~uma远程资源授权对接asp.net core10.keycloak~授权功能的使用11.keycloak~避免出现"用户已登录"的界面12.keycloak~记住密码实现关闭浏览器用户状态保持原理13.keycloak~大数据量时坑出现~索引的坑14.keycloak~自定义登出接口15.keycloak~时间不正确的问题16.keyclaok~keycloak存到cookie中的值和session_state17.keyclaok~web安全防护18.keycloak~JWT没有被持久化_是因为你对方法论理解不到位19.keycloak~RFC知识的了解
20.keycloak~资源的远程授权
21.keycloak~自定义directgrant直接认证22.keycloak~jconsole监控wildfly和jboss23.jboss~静态文件路由和自定义日志24.keycloak~11.3.0之后微信认证问题解决25.keycloak~缓存的使用26.keycloak~KEYCLOAK_REMEMBER_ME中文用户名问题新版已经解决27.keycloak~管理平台的查询bug与自定rest中文检索28.跨域Cookie的读取29.keycloak~账号密码认证和授权码认证30.keycloak~OIDC&OAuth2&自定义皮肤31.keycloak~自定义SPI的注入与扩展32.keycloak集成微信登陆~解决国内微信集成的问题33.keycloak~自定义redirect_uri的方法17.1远程资源授权准备
17.1.1认证和访问流程图
参考:http://www.zyiz.net/tech/detail-141309.html

17.1.2为用户指定角色
可以使用ROLE_USER和ROLE_ADMIN 两种角色


17.1.3添加认证服务和资源服务


17.1.4配置客户端的认证权限

17.1.5资源服务器打开远程授权

Policy Enforcement Mode:指定授权服务器接受到请求时策略如何执行
- Enforcing:当资源没有配置关联的策略时,请求默认被拒绝访问,这也是默认的选项
- Permissive:当资源没有配置关联的策略时,请求允许访问,但也需要先登录,否则拒绝访问
- Disabled:禁用所有资源的所有访问策略
Decision Strategy:表示权限最终是如何计算的策略,以决定相应的资源是否能获得授权
- Affirmative :至少一个权限计算做出正向决定
- Unanimous:所有的权限计算都要做出正向决定
17.1.6配置资源客户端的uma_protection角色
这一步非常重要,如果没有配置,远程授权会是403
这个参考资料:https://stackoverflow.com/questions/47199243/spring-keycloak-adapter-permissions-policy-enforcer-how-to-set-it-up

17.1.7资源和权限及策略关系图

17.2对资源授权的步骤
17.2.1建立资源

17.2.2建立策略

17.2.3建立权限
一个权限用关联一个资源和多个策略

远程授权配置
keycloak:
auth-server-url: http://localhost:8080/auth
realm: myrealm
resource: resource-server
credentials:
secret: 0da76edf-e2df-49a9-a336-6b9bc35afa7e
policy-enforcer-config:
enforcement-mode: ENFORCING
security-constraints:
- auth-roles:
- "*"
security-collections:
- name:
patterns:
- /*
