.. _saml-okta: okta (SAML2.0) - CWP ======================= 본 가이드는 okta 와 네트워크 접근제어 시스템인 Genian NAC의 인증연동 기능을 수행하기 위한 설정 방법을 안내합니다. Genian NAC와 okta 솔루션의 APP 연동을 통하여 Genian NAC자체 사용자DB를 관리할 필요가 없이 okta를 통해 사용자 인증을 수행할 수 있습니다. 사용자 인증을 위해 Genian NAC CWP페이지에서 SAML2.0 프로토콜을 이용하여 okta인증을 호출하고 okta에서 사용자인증여부를 확인하여 정상적인 SSO가 이루어집니다. 권장버전 ---------- .. csv-table:: :header: 제품명(구성요소),버전,비고 :class: longtable :widths: 30 30 40 Genian NAC(정책서버),V5.0 이상,2020.05 이후 Release 버전 okta APP,SAML2.0,2021.05 현재 연동가능 연동의 목적 -------------- Genian NAC와 okta 연동은 다음의 효과를 제공합니다. - NAC, okta 개별 인증을 위한 사용자DB 관리 불필요 - okta 계정을 이용하여 NAC 인증가능 지원되는 기능 -------------------- okta SAML App 연동은 다음과 같은 기능을 지원합니다: - SP-initiated SSO - IdP-initiated SSO - JIT (Just-In-Time) Provisioning - Single Logout (SLO) - Signed Requests 위 기능에 대한 자세한 정보는 , https://help.okta.com/okta_help.htm?type=oie&id=ext_glossary 에서 확인하세요. 연동 설정 방법 ---------------- 본 가이드에서 다루는 Genian NAC와 okta 설정 방법은 연동을 위한 필수 항목만을 안내합니다. 최초 1회 설정 이후 자동으로 적용됩니다. Step 1: okta 연동을 위한 계정등록 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ #. https://www.okta.com/free-trial/ 접속하여 트라이얼 계정을 신청합니다. - 사용자 정보와 국가를 선택합니다. #. 신청한 메일주소로 수신된 인증확인 메일을 확인합니다. - 신청한 메일주소로 'Activate your okta account' 라는 제목으로 계정정보 확인 메일이 발송됩니다. #. 메일 내 'Activate okta Accout' 버튼을 클릭하여 계정을 활성화 하십시오. - 인증을 위한 초기패스워드 변경과 2차 인증에 대한 설정을 합니다. - okta 콘솔접속시 OTP 2factor 인증을 요구하며 아이폰,안드로이드 OTP 앱 설치 및 OTP 등록이 필요합니다. - OTP 등록과 로그인을 완료하였다면 이제 연동을 위한 SAML APP 설정이 시작됩니다. Step 2: 인증연동을 위한 SAML APP 추가 및 설정 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ **General tab(okta APP에 Genian NAC의 SP정보를 입력)** #. 메뉴에서 **Applications > Applications** 로 이동합니다. #. **Browse App Catalog** 메뉴에서 Genians NAC application을 검색하세요. #. 검색된 NAC앱을 선택한 후 **Add Integration** 버튼을 클릭하여 추가합니다. #. Application label을 입력합니다. #. Sign On 탭을 선택하세요. #. **Base URL** 입력란에 NAC 정책서버의 URL을 아래의 예시처럼 입력합니다. - ex) \https://test.genians.net/cwp2 #. **Settings > Sign on methods > SAML 2.0 > More details** 버튼을 클릭하여 IdP 정보를 확인합니다. #. Genian NAC **Web콘솔 > 설정 > 사용자인증 > 인증연동 > SAML2 인증연동** 에 다음 각 항목의 값을 okta에서 복사해서 입력하십시오. - **IdP SSO URL** - okta의 **Sign on URL**. - **IdP Entity ID** - okta의 **Issuer**. - **x509 Certificate** - okta의 **Signing Certificate** 를 다운로드 또는 복사해서 입력하십시오. #. JIT provisioning 기능을 사용할려면 NAC에서 **JIT provisioning** 을 'On'으로 변경하십시오. - NAC UI의 **JIT provisioning > 추가정보** 에서 추가 버튼을 클릭해서 사용자 계정의 이름, 이메일을 설정하십시오. - 이름에 **{lastName}{firstName}** 을 입력하십시오. - 이메일에 **email** 을 입력하십시오. - SAML Attributes (firstName, lastName, email) 항목은 okta에 이미 사전 정의 되어 있습니다. - 사전 정의된 속성 이외의 속성도 **Attributes (Optional)** 메뉴를 이용해서 추가가 가능합니다. #. Single Logout(SLO)를 사용할려면 NAC에서 **Single Logout(SLO)** 설정을 'On' 하십시오. - okta의 Sign on > Settings 에서 **Enable Single Logout** 항목을 체크하십시오. - SP X.509 certificate 를 다운로드해서 okta의 Signature Certificate 에 업로드 하십시오. SLO 기능을 사용하기 위해서는 SP의 인증서가 필요합니다. - NAC의 **IdP SLO URL** - okta의 **Single Logout URL** 을 복사해서 입력하십시오. - okta 화면에서 **Single Logout URL** 이 보이지 않는 경우 **Enable Single Logout** 설정이 체크된 상태에서 **Save** 버튼을 클릭해서 저장하시기 바랍니다. - 다시 Sign On 탭으로 돌아와서 **Single Logout URL** 을 확인하십시오. #. Signed Requests를 사용할려면 **Signed Requests** 설정을 'On' 하십시오. - Signed Requests의 경우 okta의 **Applications > Create App Integration** 을 통해 SAML 설정을 해야 기능을 사용할 수 있습니다. - SP X.509 certificate 를 다운로드해서 okta의 Signature Certificate 에 업로드 하십시오. Signed Requests 기능을 사용하기 위해서는 SP의 인증서가 필요합니다. - okta의 SAML Settings에서 Signed Requests를 체크하시기 바랍니다. #. Genian NAC CWP 인증 화면에서 표시할 okta 인증버튼에 표시할 문구를 **로그인 버튼 문구** 에 입력합니다. #. Genian NAC Web 콘솔 설정 화면 하단 **수정** 버튼을 클릭합니다. .. note:: Sign On tab의 Base URL 필드에 올바른 값을 입력했는지 확인하세요. 잘못된 값을 사용하면 SAML을 통해 NAC로 인증할 수 없습니다. ex) \https://test.genians.net/cwp2 Step 3: okta 인증연동에 사용할 계정 추가 및 할당 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 이미 사용자가 등록되어 있다면 5번으로 이동 1. okta 콘솔화면 메뉴 **Directory > Groups** 으로 이동합니다. 2. 화면 중간 **Add Group** 버튼을 클릭하여 그룹을 생성합니다. 3. okta 콘솔화면 메뉴 **Directory > People** 으로 이동합니다. 4. 화면 중간 **Add Person** 버튼을 클릭하여 사용자를 추가합니다. .. note:: Password 항목은 관리자가 패스워드를 지정하여 생성할지 사용자 최초로그인시 변경하도록 할지 선택합니다. 5. okta 콘솔화면 메뉴 **Application > Application** 으로 이동합니다. 6. 위에서 등록한 APP 우측 삼각형아이콘을 클릭하여 **Assign to Users** 를 클릭합니다. 7. 팝업화면에서 APP을 통하여 인증연동에 사용할 계정의 우측 **Assign** 버튼을 클릭하여 APP에 할당해줍니다. 인증연동 테스트 방법 ----------------------- **okta My Apps 페이지에서 테스트 하는 방법 (IdP-initiated SSO)** #. okta My Apps 페이지에 접속하여 생성한 NAC SAML App을 클릭합니다. **App Embed Link 사용방법 (IdP-initiated SSO)** #. okta의 General tab 화면 아래쪽으로 이동하면 **App Embed Link** 를 제공합니다. #. 해당 링크를 통해 NAC에 로그인할 수 있습니다. **Genian NAC Web콘솔에서 테스트하는 방법 (SP-initiated SSO)** #. Web콘솔에 접속하여 **설정 > 사용자인증 > 인증연동 > 인증테스트** 항목에 **테스트** 버튼을 클릭합니다. #. 팝업창에서 인증정보 저장소를 **SAML2** 를 선택합니다. #. 새로운 팝업창에 okta 인증페이지가 표시되며 사용자명, 암호를 입력하여 인증합니다. #. '인증에 성공하였습니다.' 메시지가 표시되면 정상적으로 인증연동이 되었습니다. **Genian NAC CWP 페이지에서 테스트하는 방법 (SP-initiated SSO)** #. Genian NAC 노드정책 비밀번호 정책을 할당 받은 단말(노드)를 준비합니다. #. Genian NAC CWP페이지에 접속합니다. #. CWP페이지에 **인증** 버튼을 클릭합니다. #. 인증화면에 위 Step2 5번 항목에서 설정한 인증버튼을 클릭합니다. #. 새로운 팝업창에 okta 인증페이지가 표시되며 사용자명, 암호를 입력하여 인증합니다. #. '인증에 성공하였습니다.' 메시지가 표시되면 정상적으로 인증연동이 되었습니다. **Single Logout (SLO) 테스트하는 방법** #. SLO 기능을 사용하도록 설정합니다. #. SSO 기능을 이용해서 인증을 합니다. #. CWP 페이지 상단의 로그아웃 버튼을 이용해서 로그아웃을 합니다. #. 다시 SAML 인증을 시도할 때 okta의 계정정보를 입력하라고 표시되면 정상적으로 SLO가 동작한 것입니다. .. note:: 인증연동 설정 후 정책적용시 제어정책 권한에 okta IdP 도메인을 추가해주어야 차단상태에서도 인증연동 창이 표시됩니다. .. code:: bash 1. 권한 추가 방법 2. 정책 > 객체 > 네트워크 3. 작업선택 > 생성 4. 기본정보 입력 5. 네트워크주소 > FQDN 선택 > IdP 도메인 입력(e.g. genians.okta.com) 6. 생성 클릭 7. 권한 메뉴로 이동 8. 생성한 네트워크객체를 이용하여 권한 생성 9. 단말 네트워크를 제어하는 제어정책에 생성한 권한 할당