.. _gsuite: 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:: ì ‘ì† í…ŒìŠ¤íŠ¸ê°€ ì •ìƒì 으로 ë˜ì§€ ì•Šì„ ê²½ìš° **ì •ì±…ì„œë²„** 와 **ë™ê¸°í™” 서버** ê°„ ì •ìƒì ì¸ í†µì‹ ì—¬ë¶€ë¥¼ ìš°ì„ ì 으로 확ì¸í•˜ì‹œê¸° ë°”ëžë‹ˆë‹¤. .. note :: ìœ íŠœë¸Œë¥¼ 통해 Google G suit ê°€ì´ë“œ ì˜ìƒì„ í™•ì¸ í• ìˆ˜ 있습니다 |gsuit| G Suite ì‚¬ì „ ì„¤ì •í•˜ê¸° -------------------------- Oauth ë™ì˜ 화면 ì„¤ì • '''''''''''''''''''''''''' #. https://console.cloud.google.com/ ì— ì ‘ì†í•˜ì—¬ API ë° ì„œë¹„ìŠ¤ 메뉴로 ì´ë™í•©ë‹ˆë‹¤. #. 좌측 íŒ¨ë„ Oauth ë™ì˜í™”ë©´ 메뉴로 ì´ë™í•©ë‹ˆë‹¤. #. User Type ì„ ì™¸ë¶€ë¥¼ ì„ íƒí•˜ê³ íŒì—…ì°½ì´ í‘œì‹œë˜ë©´ 테스트를 ì„ íƒí•˜ê³ ``만들기`` ë²„íŠ¼ì„ í´ë¦í•©ë‹ˆë‹¤. #. 앱 ì´ë¦„ 등 필수 í•ëª©ì„ ìž…ë ¥í•˜ê³ ``ì €ìž¥`` ë²„íŠ¼ì„ í´ë¦í•©ë‹ˆë‹¤. #. ì •ë³´ ì ‘ê·¼ 범위ì—서 ``범위 추가 ë˜ëŠ” ì‚ì œ`` ë²„íŠ¼ì„ í´ë¦í•©ë‹ˆë‹¤. #. 하단 ì§ì ‘ 범위 추가 í•ëª©ì— í•˜ë‹¨ 2ì¤„ì„ ìž…ë ¥í•˜ê³ ``ì—…ë°ì´íЏ`` ë²„íŠ¼ì„ í´ë¦í•©ë‹ˆë‹¤. .. code-block:: 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ì„ ì¶”ê°€í•©ë‹ˆë‹¤. .. code-block:: 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 ì†ì„±ì„ ì œê³µí•˜ì§€ 않으므로 ì‚¬ìš©ìž ë¹„ë°€ë²ˆí˜¸ë¥¼ ë™ê¸°í™”í• ìˆ˜ 없습니다. ë”°ë¼ì„œ 별ë„ì˜ ì—°ë™ì„ ì„¤ì •í•´ì•¼í•©ë‹ˆë‹¤. :doc:`../integrate-external` ì˜ ``SAML 2.0`` ì„ ì°¸ì¡°í•©ë‹ˆë‹¤. .. |gsuit| image:: /images/youtube.png :target: https://www.youtube.com/watch?v=ZECnzRlEQIs :width: 35px