본문으로 건너뛰기

OAuth 연동

ABC User Feedback에서 OAuth 2.0 기반의 싱글 사인온(SSO)을 설정하면, 사용자들이 별도의 계정 생성 없이 기존 계정(Google, Microsoft, GitHub 등)으로 로그인할 수 있습니다. 이는 사용자 편의성을 높이고 기업 환경에서 통합 인증을 구현하는 데 필수적입니다.


OAuth 연동 개요

ABC User Feedback에서 지원하는 OAuth 방식:

1. Google OAuth

  • 별도 설정 없이 기본 제공
  • Google 계정을 통한 간편 로그인

2. 커스텀 OAuth 제공자

  • 사내 인증 시스템
  • 기타 OAuth 2.0/OpenID Connect 호환 서비스

OAuth를 설정하면 기존 이메일 로그인과 병행하여 사용할 수 있으며, 조직 정책에 따라 OAuth만 허용하도록 제한할 수도 있습니다.


Google OAuth 연동 설정

Google Cloud Console에서 설정

1. Google Cloud Console 접속

Google Cloud Console에 접속하여 프로젝트를 생성하거나 기존 프로젝트를 선택합니다.

2. OAuth 2.0 클라이언트 ID 생성

  1. API 및 서비스 > 사용자 인증 정보 메뉴로 이동
  2. + 사용자 인증 정보 만들기 > OAuth 클라이언트 ID 선택
  3. 애플리케이션 유형을 웹 애플리케이션으로 선택

3. 승인된 리디렉션 URI 설정

승인된 리디렉션 URI에 다음 URL을 추가합니다:

https://your-domain.com/auth/oauth-callback

예시:

  • https://feedback.company.com/auth/oauth-callback
  • http://localhost:3000/auth/oauth-callback (개발 환경)

4. 클라이언트 정보 확인

생성 완료 후 다음 정보를 확인하고 복사해둡니다:

  • 클라이언트 ID: 1234567890-abc123def456.apps.googleusercontent.com
  • 클라이언트 보안 비밀번호: GOCSPX-abcdef123456

ABC User Feedback에서 Google OAuth 설정

Google OAuth를 사용하려면 다음 단계를 따라 설정해야 합니다:

1. Google OAuth 설정 활성화

Settings > Login Management에서:

  1. OAuth2.0 Login 토글을 활성화
  2. Login Button Type을 "Google Login"으로 선택
  3. Google Cloud Console에서 얻은 정보 입력:
    • Client ID: Google Cloud Console에서 생성한 클라이언트 ID
    • Client Secret: Google Cloud Console에서 생성한 클라이언트 보안 비밀번호
    • Authorization Code Request URL: https://accounts.google.com/o/oauth2/v2/auth
    • Scope: openid email profile
    • Access Token URL: https://oauth2.googleapis.com/token
    • User Profile Request URL: https://www.googleapis.com/oauth2/v2/userinfo
    • Email Key: email

2. 리디렉션 URI 등록

Google Cloud Console에서 다음 URL을 승인된 리디렉션 URI에 추가:

https://your-domain.com/auth/oauth-callback

개발 환경의 경우:

http://localhost:3000/auth/oauth-callback

커스텀 OAuth 제공자 연동

사내 인증 시스템 연동

ABC User Feedback은 기업 환경에서 사용하는 사내 인증 시스템과 연동할 수 있습니다. 대부분의 사내 인증 시스템은 OAuth 2.0 또는 OpenID Connect 표준을 지원하므로, 표준 OAuth 플로우를 통해 연동이 가능합니다.

사내 인증 시스템 설정 요구사항

사내 인증 시스템과 연동하려면 다음 정보가 필요합니다:

  1. OAuth 클라이언트 등록

    • 클라이언트 ID
    • 클라이언트 시크릿
    • 리디렉션 URI: https://your-domain.com/auth/oauth-callback
  2. OAuth 엔드포인트 정보

    • Authorization URL (인증 요청 URL)
    • Token URL (토큰 교환 URL)
    • User Info URL (사용자 정보 조회 URL)
  3. 권한 범위(Scope)

    • 사용자 프로필 정보 접근 권한
    • 이메일 주소 접근 권한

일반적인 사내 인증 시스템 예시

항목설명사내 시스템 예시
Login Button Type로그인 버튼 타입CUSTOM
Login Button Name로그인 버튼에 표시될 이름사내 계정으로 로그인
Client IDOAuth 클라이언트 IDcompany-auth-client-123
Client Secret클라이언트 보안 비밀번호company-secret-abc123
Authorization Code Request URL사용자 인증 요청 URLhttps://auth.company.com/oauth/authorize
Scope요청할 권한 범위openid email profile
Access Token URL토큰 요청 URLhttps://auth.company.com/oauth/token
User Profile Request URL사용자 정보 조회 APIhttps://auth.company.com/api/user
Email Key사용자 정보 JSON에서 이메일 필드명email 또는 mail

기타 OAuth 2.0/OpenID Connect 호환 서비스

ABC User Feedback은 OAuth 2.0 또는 OpenID Connect 표준을 준수하는 모든 인증 서비스와 연동할 수 있습니다.

지원 가능한 서비스 유형

  • OpenID Connect 제공자: 표준 OpenID Connect 프로토콜을 지원하는 서비스
  • OAuth 2.0 제공자: OAuth 2.0 Authorization Code 플로우를 지원하는 서비스
  • 커스텀 인증 서버: 표준 OAuth 엔드포인트를 제공하는 자체 구축 서비스

연동 설정 방법

Settings > Login Management에서 커스텀 OAuth를 설정합니다:

  1. 관리자 계정으로 로그인Settings > Login Management 메뉴로 이동
  2. OAuth2.0 Login 토글을 활성화
  3. Login Button TypeCUSTOM으로 선택
  4. 인증 서비스 제공자로부터 받은 정보 입력:
    • Login Button Name: 로그인 버튼에 표시될 텍스트 (예: "사내 계정으로 로그인")
    • Client ID: OAuth 클라이언트 식별자
    • Client Secret: 클라이언트 인증 비밀번호
    • Authorization Code Request URL: 사용자 인증 요청 URL
    • Scope: 요청할 권한 범위 (공백으로 구분, 예: "openid email profile")
    • Access Token URL: 액세스 토큰 요청 URL
    • User Profile Request URL: 사용자 프로필 정보 조회 URL
    • Email Key: 사용자 정보 JSON에서 이메일 필드명 (예: "email" 또는 "mail")

관련 문서