KeyCloak을 접속하여 Realm을 생성하고 기본적인 세팅을 한다.
1. Realm 만들기
2. Client 만들기
※ 이때 AccessType을 Credential로 하게되면 Credential 탭이 추가로 생긴다.
3. [Client-Credential] Client 인증방법을 Client id and Secret으로 설정
4. [Client-Roles] 할당할 Role을 정의하기
※ 저는 별로도 Role을 정의하지 않고 Client의 Role을 가지고 서비스할 예정입니다.
5. User 만들기
6. [Users-Details] Required user actions를 공란으로 비우기
7. [Users-Credentials] Password를 설정하기. 단, Temporary 옵션이 켜져있다면 Disable해야 추가 인증을 물어보지 않으니 주의!
8. [Users-Role mapping] 에서 할당할 Role을 선택하여 매핑. Client에서 정의한 Role 매
기본정보 받아오기
https://<서버주소>/realms/<REALM이름>/.well-known/openid-configuration 을 사용해서 기본정보를 받아온다.
Postman에서 패킷 테스트
Token발행에 필수적인 파라미터를 body에 삽입한 후 호출한다.
API 규격 샘플
1) KeyCloak 정보확인
http://keycloak01.armyost.com:5010/realms/Sample/.well-known/openid-configuration
Header 없음
Body 없음
2) 토큰 수령
http://keycloak01.armyost.com:5010/realms/Sample/protocol/openid-connect/token
Header 없음
Body : x-www-formUrlEncoded
Body Attribute :
3) 사용자 정보 확인으로 Token 유효성 인증
http://keycloak01.armyost.com:5010/realms/Sample/protocol/openid-connect/userinfo
Header
"Authorization":"Bearer eyJhbGciOiJSUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICJzUlM4VHpnLWRNVUpwdVl3OFFPam9UVGp2anVwYmRYNkV2clFmbWxnVlJzIn0.eyJleHAiOjE2OTM1MjgwODMsImlhdCI6MTY5MzUyNzc4MywianRpIjoiMTg2ZmQwYzQtOGRlYS00MTZiLWE0NmQtMjEwYTNmZmFhY2RlIiwiaXNzIjoiaHR0cDovL2tleWNsb2FrMDEuYXJteW9zdC5jb206NTAxMC9yZWFsbXMvU2FtcGxlIiwic3ViIjoiNjFkNDkwMzYtMWJmYy00ZDkzLWJjODctNGJiNWYzY2E3NmQ0IiwidHlwIjoiQmVhcmVyIiwiYXpwIjoiU3ByaW5nYm9vdCIsInNlc3Npb25fc3RhdGUiOiIwODkwZmJkMC0wMDIzLTQ3ZGUtOGU5Ny0xZjFmOTQ3YWU3ZTUiLCJhY3IiOiIxIiwiYWxsb3dlZC1vcmlnaW5zIjpbImh0dHA6Ly9rZXljbG9hazAxLmFybXlvc3QuY29tOjUwMTAvKiJdLCJyZXNvdXJjZV9hY2Nlc3MiOnsiU3ByaW5nYm9vdCI6eyJyb2xlcyI6WyJST0xFX1VTRVIiXX19LCJzY29wZSI6ImVtYWlsIHByb2ZpbGUiLCJzaWQiOiIwODkwZmJkMC0wMDIzLTQ3ZGUtOGU5Ny0xZjFmOTQ3YWU3ZTUiLCJlbWFpbF92ZXJpZmllZCI6ZmFsc2UsInByZWZlcnJlZF91c2VybmFtZSI6Impwa2ltIiwiZW1haWwiOiJqcGtpbUBzaWNjLmNvLmtyIn0.k_oI6v7fjzyQ-DJWwwS19KeyJK1PEluoHvUrvSXKlHN7grriA6y0EwYWl-Gmeji6hKkBBtHVs_KNMth9ay1qEX_yLLLQCK5wro-mDhz_yZgwTm5Wo7FJB5VWk17d136NgKlGaOkBG2pEFCrY8bixv1U_9nSenDXqIsi4VcGx4mM2e6qPA20jqIkREBhof19r9cXTpAITUV5ZZ-YcbR7ePkVC0AHfdosS0UjVX23Wptl6YL_p588AGPr6ujphwBmQbs4tID_7MFe3GOm4OMJxHmfzaHNeI7fnYr27VmwQyMOsGzh9m0DBh3fYn8WuXiTGs6JJr6uHm36zoDBgFobbmg"
"Content-Type":"application/x-www-form-urlencoded"
Body 없음
'PaaS > 기타' 카테고리의 다른 글
Redis 설치 Centos7에서 (1) | 2023.08.31 |
---|---|
KeyCloak 17버전 Centos7에 설치하기 (0) | 2023.08.31 |
KeyCloak v 20.0.3 설치하기 (0) | 2023.02.14 |
KeyCloak 핵심 컨셉 (0) | 2023.02.13 |
서버 부팅시 자동실행하도록 등록하기 (0) | 2022.10.05 |