All checks were successful
		
		
	
	continuous-integration/drone/push Build is passing
				
			Closes #3. Closes #5. Closes #7. Closes #4. Closes #2.
		
			
				
	
	
		
			26 lines
		
	
	
		
			693 B
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			26 lines
		
	
	
		
			693 B
		
	
	
	
		
			Python
		
	
	
	
	
	
| """OpenID Connect logic."""
 | |
| 
 | |
| from authlib.integrations.starlette_client import OAuth, OAuthError
 | |
| 
 | |
| 
 | |
| def init_oidc():
 | |
|     """Initialise OIDC client."""
 | |
|     from keycloak_collective_portal.config import (
 | |
|         KEYCLOAK_BASE_URL,
 | |
|         KEYCLOAK_CLIENT_ID,
 | |
|         KEYCLOAK_CLIENT_SECRET,
 | |
|         KEYCLOAK_SCOPES,
 | |
|     )
 | |
| 
 | |
|     oidc = OAuth()
 | |
|     oidc.register(
 | |
|         name="keycloak",
 | |
|         client_kwargs={"scope": KEYCLOAK_SCOPES},
 | |
|         client_id=KEYCLOAK_CLIENT_ID,
 | |
|         client_secret=KEYCLOAK_CLIENT_SECRET,
 | |
|         authorize_url=f"{KEYCLOAK_BASE_URL}/auth",
 | |
|         access_token_url=f"{KEYCLOAK_BASE_URL}/token",
 | |
|         jwks_uri=f"{KEYCLOAK_BASE_URL}/certs",
 | |
|     )
 | |
|     return oidc
 |