본문 바로가기

Keycloak7

[Django] admin에 keycloak login 붙이기 # 이미 존재하는 것 장고 프로젝트 (with django-admin-interface) 연동할 키클락 # 원하는 것 장고 어드민의 기본 로그인 화면은 아래와 같다. (admin_interface를 사용하는 경우) LOG IN 버튼 밑에 Keycloak용 로그인 버튼을 만들고, 키클락 유저로 로그인 가능하도록 만들겠다. # 시작! 🚀 1) social auth 세팅 social-auth-app-django 설치 pip install social-auth-app-django settings.py에 social_django 추가 # settings.py INSTALLED_APPS = [ ... 'social_django', # 추가 ] migration 수행 python manage.py migrate 여기.. 2024. 3. 30.
[keycloak/saml2aws] keycloak google user로 aws cli 사용하기 # 상황 google idp를 통해 만들어진 keycloak user들이 aws cli를 사용하고 싶음 google idp 및 aws client 설정, aws iam role 연동은 끝난 상태 # saml2aws 란? saml 자격증명을 통해 aws 임시 자격 증명을 가져올 수 있는 도구 https://github.com/Versent/saml2aws GitHub - Versent/saml2aws: CLI tool which enables you to login and retrieve AWS temporary credentials using a SAML IDP CLI tool which enables you to login and retrieve AWS temporary credentials using.. 2023. 11. 5.
[Keycloak 21/Terraform] AWS SAML 로그인 연동하기 # provider 설정 2023.10.29 - [공부/IaC] - [Terraform] Keycloak Provider 구성하기 (Keycloak 21) # 로컬 변수 설정 locals { keycloak_url = "" # keycloak 주소 keycloak_realm = "" # aws용 keycloak realm 이름 } # [keycloak] aws client 생성 resource "keycloak_saml_client" "aws" { realm_id = local.keycloak_realm client_id = "urn:amazon:webservices" idp_initiated_sso_url_name = "amazon-aws" assertion_consumer_post_url = "htt.. 2023. 10. 29.
[Keycloak 21] AWS SAML 로그인 연동하기 terraform 버전 2023.10.29 - [공부/Open Source] - [Keycloak 21/Terraform] AWS SAML 로그인 연동하기 # 1. 별도 realm 생성 (Optional) master realm과 별도로 유저/그룹 관리를 할 것이기 때문에 realm을 생성한다. (master realm하고 동일한 유저 관리를 할 것이라면 생략해도 좋을 듯 하다) 나는 infra 라고 만들었다. # 2. aws client 생성 (urn:amazon:webservices) 먼저 aws sp (서비스 제공자) 파일을 다운받자 curl -O https://signin.aws.amazon.com/static/saml-metadata.xml infra realm에서 Clients > Import.. 2023. 10. 29.
[Keycloak 21] Google idp 추가 # Google OAuth Client 만들기 GCP 접속 > User 정보를 제공할 프로젝트 진입 > API 및 서비스 > 사용자 인증 정보 > 사용자 인증 정보 만들기 > OAuth 클라이언트 ID 애플리케이션 유형 : 웹 애플리케이션 이름 : 식별 가능한 이름 설정 그리고 승인된 리디렉션 URI를 아래 규칙에 맞게 추가해주자 https://[keycloak host]/realms/[realm 이름]/broker/google/endpoint https://keycloak.honglab.com/realms/master/broker/google/endpoint google idp를 여러 keycloak realm에 등록하는 경우, realm별 URI를 다 추가해주자 (나는 master realm에만 추가.. 2023. 10. 29.
[Terraform] Keycloak Provider 구성하기 (Keycloak 21) # 공식 문서 https://registry.terraform.io/providers/mrparkers/keycloak/latest/docs#client-credentials-grant-setup-recommended Terraform Registry registry.terraform.io 여기에 어느정도 설명은 나와있으나, 21버전/사진 과 함께 설명해본다. # Terraform용 Client 생성 키클락 내 모든 권한을 갖도록 만들 것이다. -> master realm에서 client를 만들어야 한다. Client ID만 필수로 정해주자 > 하단의 Next Capability Config도 수정해주자 Client authentication : ON Standard flow : OFF Direct ac.. 2023. 10. 29.
[Keycloak 21] k8s cluster에 helm chart로 설치하기 bitnami 에 키클락 차트가 있다. https://artifacthub.io/packages/helm/bitnami/keycloak keycloak 17.2.0 · bitnami/bitnami Keycloak is a high performance Java-based identity and access management solution. It lets developers add an authentication layer to their applications with minimum effort. artifacthub.io # values file auth: adminUser: admin adminPassword: admin ingress: enabled: true ingressClassName: n.. 2023. 10. 29.