Google G Suite
Genian NAC는 G Suite 디렉토리를 사용자 및 조직 정보의 소스로 사용할 수 있습니다. G Suite 동기화를 통해 사용자 계정을 로컬에서 생성하여 관리 또는 정책에 사용 할 수 있습니다.
기본적인 동작방식은 정책서버가 G suite에서 생성한 Oauth Client ID를 사용하여 G suite workspace 에 접근하고 정보를 동기화하는 방식이 사용됩니다.
다음은 G Suite를 기반으로 사용자 및 조직 정보를 동기화하는 방법에 대해 설명합니다.
접속 테스트 하기
접속 테스트를 수행하기 위해서는 다음에 기본값이 입력되어야 합니다.
항목 |
설정값 |
설명 |
Google G Suite |
구글 인증 코드 |
정보동기화 세부설정 내 구글 인증 코드가 삽입되어있어야합니다. |
DOMAIN |
워크스페이스내 별도의 도메인에 대해서만 동기화 하는 경우 입력 |
|
VIEW TYPE |
데이터를 읽어올 VIEW를 선택합니다. admin_view : 관리자 권한 domain_public : 공개 권한 |
|
데이터소스 구분 값 |
다수의 동기화 설정을 사용하는 경우 설정 |
|
정책서버 |
구글 API Client 정보 |
구글 API Oauth 클라이언트 ID와 키, 리디렉트 URI 정보가 설정 > 기타설정에 입력되어 있어야합니다. |
Note
접속 테스트가 정상적으로 되지 않을 경우 정책서버 와 동기화 서버 간 정상적인 통신 여부를 우선적으로 확인하시기 바랍니다.
G Suite 사전 설정하기
Oauth 동의 화면 설정
https://console.cloud.google.com/ 에 접속하여 API 및 서비스 메뉴로 이동합니다.
좌측 패널 Oauth 동의화면 메뉴로 이동합니다.
User Type 을 외부를 선택하고 팝업창이 표시되면 테스트를 선택하고
만들기
버튼을 클릭합니다.앱 이름 등 필수 항목을 입력하고
저장
버튼을 클릭합니다.정보 접근 범위에서
범위 추가 또는 삭제
버튼을 클릭합니다.하단 직접 범위 추가 항목에 하단 2줄을 입력하고
업데이트
버튼을 클릭합니다.https://www.googleapis.com/auth/admin.directory.orgunit.readonly https://www.googleapis.com/auth/admin.directory.user.readonly
저장 후 계속
버튼을 클릭합니다.Oauth 앱에 접근허용하는 계정을
ADD USERS
버튼을 클릭하여 추가합니다.(인증 코드 발급 시 1회만 사용)저장 후 계속 버튼을 클릭하여 설정한 내용을 확인하고 하단
대시보드로 돌아가기
를 클릭합니다.
사용자 인증 정보 설정(Oauth client ID)
좌측 패널 사용자 인증 정보 메뉴로 이동합니다.
상단
사용자 인증 정보 만들기
버튼을 클릭하고Oauth 클라이언트 ID
를 클릭합니다.애플리케이션 유형은
웹 애플리케이션
을 선택합니다.승인된 리디렉션 URI 항목에는 하단 URL을 추가합니다.
https://developers.google.com/oauthplayground
만들기
버튼을 클릭합니다.생성 결과화면에서 클라이언트ID, 클라이언트 보안 비밀번호, 리디렉션 URI를 복사해 놓습니다.
NAC 관리콘솔에 Oauth 클라이언트 ID 등록
정책서버 관리콘솔에 로그인합니다.
상단 설정메뉴로 이동합니다.
좌측 패널 환경설정 > 기타설정 으로 이동합니다.
하단 구글 API 클라이언트 ID 및 인증키 설정 항목으로 이동합니다.
클라이언트 ID, 클라이언트 인증키, 승인된 리디렉션 URI를 입력하고 하단
수정
버튼을 클릭합니다.
NAC 정보 동기화 설정하기
상단 항목의 설정 으로 이동합니다.
왼쪽 설정 항목에서 사용자인증 > 정보 동기화 로 이동합니다.
작업선택 > 생성 을 클릭합니다.
기본설정 옵션
ID : 고유의 이름을 입력합니다.
동기화 수행주기 : 동기화에 대해 지정된 시간 또는 주기적인 간격을 선택합니다.
정책적용여부 : 동기화 후 변경사항 반영을 위해
적용함
을 선택합니다. 동기화 설정이 여러 개인 경우적용안함
으로 설정하고 마지막 동기화만 사용하도록 설정 할 수 있습니다.
데이터베이스 옵션
DB타입 :
Google G Suite
구글 인증 코드 : 동기화 수행 계정 인증을 위한 코드를 입력합니다. 상단의
구글 인증 코드 발급
버튼을 클릭하고, 팝업창에서 계정 로그인 및 권한허용
버튼 클릭 후 출력되는Authorization code
를 복사하여 입력합니다.(팝업창은 닫습니다.)DOMAIN: 도메인 입력시 해당 도메인의 정보만 동기화합니다. 미입력시 계정이 속한 모든 도메인에 대한 정보를 동기화합니다.
VIEW TYPE : 권한에 따른 데이터 동기화 범위를 선택합니다다. 일반적으로 admin 권한의 계정인 경우
admin_view
를, 그렇지 않은 경우domain_public
을 선택합니다.
사용자정보 옵션
사용자테이블명 :
users
을 입력합니다.사용자ID컬럼명 :
primaryEmail
을 입력합니다.사용자이름컬럼명 :
name/fullName
을 입력합니다.부서ID컬럼명 :
orgUnitPath
을 입력합니다.
부서정보 옵션
Table Name :
orgunits
을 입력합니다.출력정렬순서 : 부서명을 기준으로 출력하기 위해
@NAMEPATH
을 입력합니다.부서ID컬럼명 :
orgUnitId
을 입력합니다.부서이름컬럼명 :
name
을 입력합니다.상위부서컬럼명 :
parentOrgUnitId
을 입력합니다.생성 버튼을 클릭합니다.
Attention
G Suite는 API 사용시 password 속성을 제공하지 않으므로 사용자 비밀번호를 동기화할 수 없습니다. 따라서 별도의 연동을 설정해야합니다. 외부 인증서버 설정 의 SAML 2.0
을 참조합니다.