์ ๋ฒ ํฌ์คํ ์์ keycloak ์ค์น๋ฅผ ํด๋ณด์๋ค.
์ด๋ฒ์ ํ๋ก์ ํธ์ ๋ง์ถฐ์
client, role ๋ฑ ์ค์ ํด๋ณด์.
[ ์ด์ ํฌ์คํ - keycloak์ ๋ค์ํ ์ค์น ๋ฐฉ๋ฒ์ ์์๋ณด๊ณ docker๋ก ์ค์นํด๋ณด๊ธฐ ]
[Keycloak, Docker, Mac] ๋ค์ํ ์ค์น ๋ฐฉ๋ฒ์ ์์๋ณด๊ณ Keycloak์ Docker๋ก ์ง์ ์ค์นํด๋ณด์. (1)
Keycloak์ ์ฌ์ฉํ ์ ์๋์ฌ๋ฌ ๋ฐฉ๋ฒ์ ์ดํด๋ณด๊ณ ์ง์ ์ค์นํด๋ณด์! ๋ง์ฝ ์ค์ ๋ก keycloak์ ์ฌ์ฉํ ์์ ์ธ ํ๋ก์ ํธ๋ฅผ ํ๊ณ ์๋ค๋ฉด?์ ์ ๊ฒฝ์ฐ๋ ์นดํ ๊ณ ๋ฆฌ์๋ ์์ง๋ง VIP ์ด๋์ฅ์ด๋ผ๋ ํ๋ก์ ํธ์์ K
post-this.tistory.com
Keycloak Client ๋ง๋ค๊ธฐ
- Create client
์ ํฌ์คํ ์์ realm์ ๋ง๋ค์๋๋ฐ, ์ด๋ ๋ง๋ค์๋ realm์ ๋ค์ด๊ฐ์ ์ค์ ํด์ผํ๋ค. Manage realms๋ฅผ ๋๋ฅด๋ฉด ๋ง๋ค์๋ realm์ด ๋ณด์ผ ๊ฒ์ด๋ค. ๊ทธ๋ผ ๊ทธ realm์ ๋๋ฅด๋ฉด ๋ค์ด๊ฐ์ง๋ค.

- Client ์์ฑํ๊ธฐ
Client ID๋ ์ฝ๋์ ์ฐ์ด๊ธฐ ๋๋ฌธ์ ๋๋ฌด ๊ธธ์ง ์๊ฒ ์์ฑํ๋๊ฒ ์ข๋ค.

- Client ์์ฑ ์ค์
์ฌ๊ธฐ์ ์ค์ํ ๊ฒ์ Client authentication์ด Off๋ก ์ค์ ๋์ด์์ด์ผํ๊ณ Authentication flow๋ Standard flow๋ก ๋์ด์์ด์ผํ๋ค. ๊ทผ๋ฐ ์๋ง ์ด๋ ๊ฒ ์ค์ ๋์ด์์ ๊ฒ์ด๋ค.

- Client ๋ก๊ทธ์ธ URL ์ค์
React ๊ฐ๋ฐ ์๋ฒ๊ฐ ๋ณดํต 5173 ํฌํธ๋๊น ์ด๋ ๊ฒ ๋ฃ์๋ค. ๋ง์ฝ ํ๋ก ํธ์ ๋ค๋ฅธ ํฌํธ๋ฅผ ์ฌ์ฉํ๊ณ ์๋ค๋ฉด ๋ง๋ ํฌํธ๋ฅผ ๋ฃ์ด์ฃผ๋ฉด ๋๋ค.

Keycloak Role ๋ง๋ค๊ธฐ
- Create role

- ์ต๊ณ ๊ด๋ฆฌ์ ์ญํ ๊ณผ ์ผ๋ฐ ๊ด๋ฆฌ์ ์ญํ ๋ง๋ค๊ธฐ


Keycloak users ๋ง๋ค๊ธฐ
- Create users
์ต๊ณ ๊ด๋ฆฌ์์ ๊ถํ์ ๊ฐ์ง users๋ฅผ ๋ฏธ๋ฆฌ ๋ง๋ค์๋ค. ํ ์คํธ์ฉ ์ฌ์ฉ์๋ก ํ๋ ๋ง๋ค์๋ค.

- super1์ ๋น๋ฐ๋ฒํธ ์ค์ ํ๊ธฐ


- super1์ ์ญํ ๋ถ์ฌํ๊ธฐ

- ์ผ๋ฐ๊ด๋ฆฌ์ admin๋ ๋ง๋ค์ด์ ์ญํ ๋ถ์ฌํ๊ธฐ
๊ณผ์ ์ super1๊ณผ ๋์ผํ๋ค.

React - Keycloak ์ฐ๊ฒฐํ๊ธฐ
- React ํฐ๋ฏธ๋ ๋ค์ด๊ฐ์ ๋ช ๋ น์ด ์ ๋ ฅํ๊ธฐ

npm install keycloak-js
- keycloak.js ๋ง๋ค๊ธฐ

import Keycloak from "keycloak-js";
const keycloak = new Keycloak({
url: "http://localhost:8180",
realm: "invitevip",
clientId: "invitevip-react",
});
export default keycloak;
React ์ฑ์ด ์ด๋ Keycloak ์๋ฒ๋ฅผ ์ฐ๋์ง, ์ด๋ realm์ ์ฐ๋์ง, ์ด๋ client๋ฅผ ์ฐ๋์ง ์๋ ค์ฃผ๋ ์ค์ ํ์ผ์ด๋ค.
๋ค์์ ํ ๊ฒ
React์์ Keycloak๊ณผ ๊ด๋ จ๋ ํ์ผ์ ์ค์ ํด๋ณด๊ฒ ๋ค.
[Keycloak, React, Docker] React์์ Keycloak์ ๋ณธ๊ฒฉ ์ ์ฉํ๊ณ ์ฝ๋๋ฅผ ํ๋ํ๋ ํํค์ณ๋ณด์.
keycloak.js๋ฅผ ๋ง๋ค์ด์keycloak ์๋ฒ์ ํต์ ํ ์ ์๋๋ก ํ๋ค.๋ค์์ ์ด ํต์ ์ ์ด์ฉํด์์ํ๋ ๋ฐฉํฅ์ผ๋ก ์ฝ๋๋ฅผ ์์ฑํด ๋ณด์. [ Keycloak ์ค์ ํ๊ธฐ ] [Keycloak, Docker, Mac] Keycloak์์ client, role, users ๋ฑ ์ค
post-this.tistory.com