[Firebase] OpenID Connect

Z6su3·2022년 12월 31일
0

Firebase와 Kakao를 OpenID Connect를 활용하여 연결하려한다.
사용 목적 중 하나는 보안이며, 사용자의 정보가 데이터베이스에 최대한 저장되지 않도록 하는것이 목표이다.

🐇 Firebase OpenID Connect

Firebase 프로젝트에서 OpenID Connect를 사용하기 위해 새로운 spark 프로젝트로 업그레이드 하면 다음과 같은 정보를 작성해야한다.

Google Cloud Docs를 활용해 작성하기 용이하다.

1) 부여 유형 : 코드흐름/암시적흐름(id_token) select
2) 이름
→ kakao
2-1) 제공업체 ID
→ odic.${이름 작성 항목}
3) 클라이언트 ID
→ Kakao developers 내 애플리케이션의 REST API Key
4) 발급자(URL)
→ Kakao developers docs에서 OIDC: 메타데이터 확인하기 부분의 REST API 요청부분 확인
5) 클라이언트 보안 비밀번호(코드흐름 select)
→ Kakako developers 내 애플리케이션의 제품설정 항목 중 카카오로그인 내 보안탭에서 코드생성 및 활성화
→ 해당 Client Secret은 REST API를 사용할 때 추가적으로 client_secret 코드값을 추가 설정해야 한다.
6) 모든 값을 정상적으로 입력했는지 확인하고 저장

🐇 Kakao

🥕 get kakao token

토큰 요청시 Parameter에 client_secret code가 추가된다.

🥕 Kakao.Auth.authorize

사용자 인가 토큰 요청 시 Parameter에 nonce값이 추가된다.

nonce는 임의의 문자열을 지칭하며, Crypto를 활용해 base64로 암호화된 문자열을 생성하는 것이 좋다.

JavaScript에서는 npm의 crypto-js library를 사용하거나 window 내장 crypto의 randomUUID를 활용하면 좋다.

profile
기억은 기록을 이길수 없다

0개의 댓글