支持keypolt idm身份验证的wirelound扩展
wirecloud-keycloak的Python项目详细描述
WireCloud Key斗篷插件
这个wirecloud插件允许使用keypolt作为idm来验证wirecloud 用户以及jwt令牌的使用,这些令牌是为那些用户颁发的,用于访问后端服务。
此插件可以与PIP一起安装,如下所示:
pip install wirecloud-keycloak
或使用源:
python setup.py develop
一旦安装,就可以通过包含wirecloud.keypolt和social\u django 在installed_apps设置中,并添加keyportoauth2作为身份验证后端。
INSTALLED_APPS += (
# 'django.contrib.sites',
# 'wirecloud.oauth2provider',
'wirecloud.keycloak',
'haystack',
'social_django'
)
AUTHENTICATION_BACKENDS = ('wirecloud.keycloak.social_auth_backend.KeycloakOAuth2',)
最后,需要在setting.py文件中包含以下设置。
IDM_BACKEND = 'keycloak'
KEYCLOAK_IDM_SERVER = 'http://keycloak.docker:8080'
KEYCLOAK_REALM = 'demo'
KEYCLOAK_KEY = 'MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAkY9D3w8J/NPtD2DT/fvPwvrU0WBtw7F6mDTV8JG3TjsrQF4HCEjExDYN9M+5GeJTu8WNfDFUzEfuq7OS/3FRLgZJnV0naYlQsH50l5vCzMD2p9vSSECHBDuz/woObHujgtQckPDv7wyWjihn4EJthI4K08Fb06quijux0M+mazF5WDqlOy3UuKlfERv8JskpOBjwnhCMwz5zv/ox8Y++AiBXlL4stqok29AXANt29+A8LvYDNXiSYuHZJeAk3oxI7G8PYQHFOTynR41hm8xNxPf8YSx2nS7ZfHBPtt9rz7QdPZ9LmXwKPpo+ml92YfHSPcmW2beOuILJ1DW8ZO5eZQIDAQAB'
SOCIAL_AUTH_KEYCLOAK_KEY = 'wirecloud'
SOCIAL_AUTH_KEYCLOAK_SECRET = '7667d30b-4e1a-4dfe-a040-0b6fdc4758f5'
KEYCLOAK_GLOBAL_ROLE = True
这些设置包括:
- idm_backend:此线云设置需要设置为keypolt,以避免使用默认keyrock idm
- keypoct\u idm\u服务器:keypoct实例的url
- keycloud领域:注册wirelocud的keycloud领域
- keycolpt_key:用于解码jwt的rsa密钥
- social_auth_keypolt_key:有线云应用程序的客户端ID
- social_auth_keypolt_secret:有线云应用程序的客户端机密
- keypolt_global_role:管理角色是否从域而不是从客户端获取(默认值:false)