Google (OIDC) - CWP
본 가이드는 Google 와 네트워크 접근제어 시스템인 Genian ZTNA의 인증연동 기능을 수행하기 위한 설정 방법을 안내합니다.
개요
Genian ZTNA와 Google 솔루션의 OIDC APP 연동을 통하여 Genian ZTNA 자체 사용자DB를 관리할 필요가 없이 Google을 통해 사용자 인증을 수행할 수 있습니다.
사용자 인증을 위해 Genian ZTNA CWP 페이지에서 OIDC (OpenID Connect) 프로토콜을 이용하여 Google 인증을 호출하고 Google에서 사용자 인증 여부를 확인하여 정상적인 SSO가 이루어집니다.
권장버전
제품명(구성요소) |
버전 |
비고 |
|---|---|---|
Genian ZTNA(정책서버) |
V6.0 이상 |
2025.10 이후 Release 버전 |
Google OAuth 2.0 |
OIDC 1.0 |
2025.10 현재 연동가능 |
연동의 목적
Genian ZTNA와 Google 연동은 다음의 효과를 제공합니다.
ZTNA, Google 개별 인증을 위한 사용자 DB 관리가 필요하지 않습니다.
Google 계정을 이용하여 SSO로 ZTNA를 인증할 수 있습니다.
OIDC 표준 프로토콜을 통한 안전한 사용자 인증을 제공합니다.
Google Workspace 사용자와 권한을 활용할 수 있습니다.
지원되는 기능
Google OIDC 연동은 다음과 같은 기능을 지원합니다:
Authorization Code Flow (표준 OIDC 인증 플로우)
PKCE (Proof Key for Code Exchange) 보안 강화
JIT (Just-In-Time) Provisioning
Access Token 및 ID Token 검증
UserInfo Endpoint를 통한 사용자 정보 조회
Google Workspace Groups 연동 (조직 계정 시)
연동 설정 방법
본 가이드에서 다루는 Genian ZTNA와 Google 설정 방법은 연동을 위한 필수 항목만을 안내합니다. 최초 1회 설정 이후 자동으로 적용됩니다.
Step 1: Google Cloud Console 프로젝트 생성 및 설정
https://console.cloud.google.com/ 에 접속하여 Google 계정으로 로그인합니다.
새 프로젝트를 생성하거나 기존 프로젝트를 선택합니다.
프로젝트 만들기 버튼을 클릭합니다.
프로젝트 이름: "Genian ZTNA CWP" 입력
조직 또는 폴더: 해당하는 조직을 선택 (선택사항)
만들기 버튼을 클릭합니다.
프로젝트 선택 후 API 및 서비스 > 라이브러리 로 이동합니다.
Google+ API 를 검색하여 활성화합니다. (사용자 프로필 정보 조회용)
검색 결과에서 Google+ API 를 클릭합니다.
사용 설정 버튼을 클릭합니다.
Step 2: OAuth 2.0 클라이언트 ID 생성
API 및 서비스 > 사용자 인증 정보 로 이동합니다.
사용자 인증 정보 만들기 버튼을 클릭하고 OAuth 클라이언트 ID 를 선택합니다.
OAuth 동의 화면이 설정되지 않은 경우 먼저 동의 화면을 구성해야 합니다.
외부 또는 내부 사용자 유형을 선택합니다. (Google Workspace 사용 시 내부 선택 권장)
애플리케이션 이름: "Genian ZTNA CWP" 입력
사용자 지원 이메일: 관리자 이메일 입력
개발자 연락처 정보: 관리자 이메일 입력
저장 후 계속 버튼을 클릭합니다.
범위 단계에서 다음 범위를 추가합니다:
../auth/userinfo.email: 이메일 주소 확인
../auth/userinfo.profile: 기본 프로필 정보 확인
openid: OpenID Connect 인증
OAuth 클라이언트 ID 생성을 계속합니다:
애플리케이션 유형: 웹 애플리케이션 선택
이름: "Genian ZTNA CWP" 입력
승인된 자바스크립트 원본: ZTNA 서버 도메인 입력
ex) https://test.genians.net
승인된 리디렉션 URI: ZTNA CWP의 OIDC 콜백 URL 입력
ex) https://test.genians.net/cwp2/faces/oidc/oidcCallback.xhtml
만들기 버튼을 클릭합니다.
생성된 클라이언트 ID 와 클라이언트 보안 비밀번호 를 안전한 곳에 복사해서 저장합니다.
클라이언트 ID 예시: 123456789012-abcdef.apps.googleusercontent.com
클라이언트 보안 비밀번호 예시: GOCSPX-abcdef123456
Step 3: Genian ZTNA OIDC 설정
Genian ZTNA Web콘솔 > 설정 > 사용자인증 > 인증연동 > OIDC 인증연동 에 다음 각 항목의 값을 Google에서 복사해서 입력하십시오.
Provider 이름 - "Google" 입력
Issuer - https://accounts.google.com
Client ID - Google의 클라이언트 ID.
Client Secret - Google의 클라이언트 보안 비밀번호.
Discovery 사용 - "Off" 선택 (자동 엔드포인트 검색이 동작안함)
Scope - "openid profile email" 입력
- {
"issuer": "https://accounts.google.com", "authorization_endpoint": "https://accounts.google.com/o/oauth2/v2/auth", "token_endpoint": "https://oauth2.googleapis.com/token", "userinfo_endpoint": "https://openidconnect.googleapis.com/v1/userinfo", "jwks_uri": "https://www.googleapis.com/oauth2/v3/certs"
}
JIT provisioning 기능을 사용할려면 ZTNA에서 JIT provisioning 을 'On'으로 변경하십시오.
ZTNA UI의 JIT provisioning > 추가정보 에서 추가 버튼을 클릭해서 사용자 계정의 이름, 이메일을 설정하십시오.
이름에 {family_name}{given_name} 입력하십시오.
이메일에 email 을 입력하십시오.
OIDC Claims (given_name, family_name, email) 항목은 Google에 이미 표준으로 정의되어 있습니다.
Genian ZTNA CWP 인증 화면에서 표시할 Google 인증버튼에 표시할 문구를 로그인 버튼 문구 에 입력합니다.
예시: "Google로 로그인", "Sign in with Google"
Genian ZTNA Web 콘솔 설정 화면 하단 수정 버튼을 클릭합니다.
주석
클라이언트 ID와 클라이언트 보안 비밀번호가 올바르게 입력되었는지 확인하세요. 잘못된 값을 사용하면 OIDC를 통해 ZTNA CWP로 인증할 수 없습니다.
인증연동 테스트 방법
Genian ZTNA Web콘솔에서 테스트하는 방법 (SP-initiated SSO)
Web콘솔에 접속하여 설정 > 사용자인증 > 인증연동 > 인증테스트 항목에 테스트 버튼을 클릭합니다.
팝업창에서 인증정보 저장소를 OIDC 를 선택합니다.
Provider 선택 화면에서 설정한 "Google" Provider를 선택합니다.
새로운 팝업창에 Google 인증페이지가 표시됩니다.
Google 계정을 선택하거나 사용자명, 암호를 입력하여 인증합니다.
Google에서 권한 동의 화면이 표시되면 허용 을 클릭합니다.
'인증에 성공하였습니다.' 메시지가 표시되면 정상적으로 인증연동이 되었습니다.
Genian ZTNA CWP 페이지에서 테스트하는 방법 (SP-initiated SSO)
노드정책의 인증정책의 인증방식을 OIDC 로 설정합니다.
Genian ZTNA CWP페이지에 접속합니다.
CWP페이지에 인증 버튼을 클릭합니다.
인증 화면에 위 Step3에서 설정한 인증버튼("Google로 로그인")을 클릭합니다.
새로운 팝업창에 Google 인증페이지가 표시됩니다.
Google 계정을 선택하거나 사용자명, 암호를 입력하여 인증합니다.
Google에서 권한 동의 화면이 표시되면 허용 을 클릭합니다.
인증 성공 시 JWT ID Token과 Access Token을 받아 사용자 정보를 추출하고 ZTNA CWP에 로그인됩니다.
주석
인증연동 설정 후 정책적용시 제어정책 권한에 Google IdP 도메인을 추가해주어야 차단상태에서도 인증연동 창이 표시됩니다.
1. 권한 추가 방법 2. 정책 > 객체 > 네트워크 3. 작업선택 > 생성 4. 기본정보 입력 5. 네트워크주소 > FQDN 선택 > IdP 도메인 입력 - accounts.google.com - apis.google.com - www.googleapis.com 6. 생성 클릭 7. 권한 메뉴로 이동 8. 생성한 네트워크객체를 이용하여 권한 생성 9. 단말 네트워크를 제어하는 제어정책에 생성한 권한 할당