Postman을 통해 Oracle Advanced Authentication REST API 사용

소개

이 사용지침서에서는 일반적으로 REST API 테스트에 사용되는 소프트웨어인 Postman을 사용한 Oracle Advanced Authentication에 대한 REST API 호출 방법을 보여줍니다.

목표

Oracle Advanced Authentication REST API는 Oracle Advanced Authentication을 구성하고 관리할 수 있도록 Oracle Advanced Authentication과 REST 클라이언트를 통합하는 방법을 제공합니다. REST API 끝점의 전체 목록은 OAA Admin API를 참조하십시오.

이 사용지침서에서는 Oracle Advanced Authentication Postman 컬렉션을 다운로드 및 임포트하고 가장 일반적인 Postman 요청을 테스트하는 방법을 알아봅니다.

필요 조건

이 자습서를 완료하려면 다음이 필요합니다.

Oracle Advanced Authentication Postman 모음 설치

Postman에서 환경 매개변수 설정

  1. Postman을 열고 파일 > 임포트를 선택합니다.

  2. 임포트 대화상자의 파일 탭에서 파일 업로드를 선택합니다. Oracle_Advanced_Authentication_Example_Environment.postman_environment.json을 선택하고 Open을 누릅니다.

  3. 왼쪽 메뉴에서 을 누릅니다.

  4. 표시된 환경 목록에서 Oracle Advanced Authentication Example Environment의 오른쪽에 있는 엘립스를 누른 다음 복제를 누릅니다.

    그림 duplication_env.jpg에 대한 설명

  5. 원래 환경 위에 나타나는 Oracle Advanced Authentication Example Environment Copy에서 elipsis를 누르고 이름을 Oracle Advanced Authentication Environment for REST APIs로 바꿉니다.

  6. 초기 값현재 값에 대해 다음 값을 입력하여 새 환경에 대한 환경 변수를 업데이트합니다. 완료되면 탭에서 저장, X를 차례로 눌러 닫습니다.

    • oaa-admin: Oracle Advanced Authentication 호스트 이름 및 관리 포트(예: https://oaa.example.com)
    • oaa-policy: Oracle Advanced Authentication 호스트 이름 및 정책 포트(예: https://oaa.example.com)입니다.
    • oaa-runtime: Oracle Advanced Authentication 호스트 이름 및 런타임 포트(예: https://oaa.example.com)
    • RELEASENAME: Oracle Advanced Authentication 설정에 지정된 RELEASENAME(예: oaainstall)입니다. OAA를 설치할 때 common.deployment.name에 대해 전달된 값입니다.
    • oaapeledapikey: Oracle Advanced Authentication 설정용 oaapolicyapikey(예: a5764d4ef6b71129f38a2d8ddc88b6060653d3c8)입니다. OAA를 설치할 때 install.global.policyapikey에 대해 전달된 값입니다.
    • oaaapikey: Oracle Advanced Authentication 설정의 oaaapikey입니다(예: a5764d4ef6b71129f38a2d8ddc88b6060653d3c8). OAA를 설치할 때 install.global.uasapikey에 대해 전달된 값입니다.

    : oaa-admin, oaa-policyoaa-runtime(spui) URL을 모를 경우 OAA Kubernetes 클러스터에서 다음을 실행합니다.

    kubectl get pods -n <namespace> | grep 'oaa-admin\|oaa-policy\|spui'
    

    그런 다음 각 포드에 대해 다음을 실행하여 URL을 가져옵니다.

    kubectl exec -it <pod> -n <namespace> -- cat serviceurl.txt
    

    이 환경은 다음과 같이 표시됩니다.

    그림 environment.jpg에 대한 설명

    : 위 예의 URL 값은 NodePort을 사용하여 OAA 설치를 가정하므로 각 POD에 대한 포트 번호가 URL에 정의되어 있습니다. OAA 설치에서 수신을 사용하는 경우 모든 경우에 수신 URL을 사용합니다.

  7. 환경 드롭다운 목록을 누른 다음 목록에서 업데이트된 환경을 선택합니다.

    그림 environment_selection.jpg에 대한 설명

Postman 모음 가져오기

  1. Oracle Advanced Authentication REST API Postman 모음을 임포트하려면 Postman 기본 페이지에서 파일 > 임포트를 선택합니다.

  2. 임포트 대화상자의 파일 탭에서 파일 업로드를 선택합니다. Oracle_Advanced_Authentication_REST_API.postman_collection.json 파일을 선택한 다음 열기, 임포트를 차례로 누릅니다.

    왼쪽 메뉴에서 모음을 누릅니다. 컬렉션은 다음과 같이 표시되어야 합니다.

    그림 collection.jpg에 대한 설명

REST API 테스트

이 섹션에서는 Postman 모음에서 Oracle Advanced Authentication에 대한 일부 요청을 실행합니다.

: SSL 인증서 확인 오류를 방지하려면 파일 > 설정으로 이동하고 일반 사항 탭에서 SSL 인증서 확인OFF로 설정합니다.

API 통합 에이전트 생성

이 섹션에서는 API 통합 에이전트를 생성합니다.

  1. 모음 탭에서 Oracle Advanced Authentication REST API > 시스템 엔티티 정의를 위한 REST API -> agent/v1로 이동합니다.

  2. 새 API 통합 에이전트 생성을 선택합니다. 이 요청은 /oaa-policy/agent/v1 끝점에 대해 POST 요청을 수행하고 Body에 있는 정보를 기반으로 APIAgent라는 API 통합 에이전트를 생성합니다.

    그림 createapiagent.jpg에 대한 설명

  3. 전송을 누릅니다.

  4. 응답에서 Status: 200 OK가 나타나고 응답 본문에 생성된 통합 에이전트에 대한 세부 정보가 표시되는지 확인합니다. 반환된 agentgid은 다음 섹션에서 사용되므로 기록해 두십시오.

    그림 createapiagentsuccess.jpg 설명

보증 수준 생성

이 섹션에서는 생성된 통합 에이전트에 대한 보증 수준을 생성합니다.

  1. 모음 탭에서 Oracle Advanced Authentication REST API > 시스템 엔티티 정의를 위한 REST API -> AssuranceLevel/v1로 이동합니다.

  2. 보증 레벨 정의를 선택합니다. 이 요청은 /oaa-policy/assuranceLevel/v1 끝점에 대해 POST 요청을 수행하고 AssuranceLevel1이라는 통합 에이전트에 대한 Assurance Level을 생성합니다. 본문에서 이전에 반환된 값과 일치하도록 agentid의 값을 편집합니다.

    그림 createassurancelvl.jpg에 대한 설명

  3. 전송을 누릅니다.

  4. 응답에서 Status: 200 OK가 나타나고 응답 본문에 생성된 보증 레벨에 대한 세부 정보가 표시되는지 확인합니다.

    createassurancelvlsuccess.jpg 그림 설명

그룹 생성

이 섹션에서는 계수에 대한 작업 그룹과 IP 주소에 대한 그룹을 생성합니다. 이 그룹은 나중에 이전에 생성된 통합 에이전트 및 보증 레벨에 대한 정책 및 규칙에 지정됩니다.

  1. [컬렉션] 탭에서 Oracle Advanced Authentication REST API > 시스템 엔티티 정의를 위한 REST API -> 그룹/v1로 이동합니다.

  2. 새 요소 그룹 생성을 선택합니다. 이 요청은 /oaa-policy/group/v1 끝점에 대해 POST 요청을 수행하고 FactorRuleGrp1라는 에이전트에 대한 그룹을 생성합니다. 본문에서 agentid의 값을 이전에 반환된 값과 일치하도록 편집합니다. 이 예에서 그룹은 ChallengeEmailChallengeOMATOTP의 두 가지 요소를 설정합니다.

    createfactorgrp.jpg 그림 설명

  3. 전송을 누릅니다.

  4. 응답에서 Status: 200 OK가 나타나고 응답 본문에 생성된 그룹에 대한 세부 정보가 표시되는지 확인합니다. 나중에 이 그룹을 정책에 지정하는 데 사용되므로 groupid를 기록해 두십시오.

    createfactorgrpsuccess.jpg 그림 설명

  5. group/v1 아래의 현재 모음에서 Create new group of type IP's를 선택합니다. 이 요청은 /oaa-policy/group/v1 끝점에 대해 POST 요청을 수행하고 SecureIP이라는 통합 에이전트에 대한 그룹을 생성합니다. 본문에서 agentgid의 값을 이전에 반환된 값과 일치하도록 편집합니다. 이 예제의 값 섹션에서는 IP를 198.51.100.1에서 198.51.100.3로 설정합니다.

    createipgrp.jpg 그림 설명

  6. 전송을 누릅니다.

  7. 응답에서 Status: 200 OK가 나타나고 응답 본문에 생성된 그룹에 대한 세부 정보가 표시되는지 확인합니다. 나중에 이 그룹을 정책에 지정하는 데 사용되므로 groupid를 기록해 두십시오.

    createipgrpsuccess.jpg 그림 설명

정책 생성

이 섹션에서는 이전에 생성된 보증 수준 및 통합 에이전트에 대한 정책을 생성합니다.

  1. 모음 탭에서 Oracle Advanced Authentication REST API > 시스템 엔티티 정의를 위한 REST API -> policy/v1으로 이동합니다.

  2. 새 정책 생성을 선택합니다. 이 요청은 /oaa-policy/policy/v1 끝점에 대해 POST 요청을 수행하고 이전에 생성한 통합 에이전트 및 Policy1라는 보증 레벨에 대한 정책을 생성합니다. 본문에서 이전에 반환된 값과 일치하도록 agentgid의 값을 편집합니다.

    createpolicy.jpg 그림에 대한 설명

  3. 전송을 누릅니다.

  4. 응답에서 Status: 200 OK가 나타나고 응답 본문에 생성된 정책에 대한 세부 정보가 표시되는지 확인합니다. policygid는 나중에 이 정책에 규칙을 지정하므로 기록해 두십시오.

    createpolicysuccess.jpg 그림 설명

정책 규칙 생성

이 섹션에서는 정책에 대한 정책 규칙을 생성합니다.

  1. 모음 탭에서 Oracle Advanced Authentication REST API > 시스템 엔티티 정의를 위한 REST API -> policy/v1 -> {policygid} -> 규칙 > {ruleid}로 이동합니다.

  2. 정책에 대한 새 규칙 정의를 선택합니다. 이 요청은 /oaa-policy/policy/v1/:policygid/rule 끝점에 대해 POST 요청을 수행합니다. [매개변수] 탭에서 policygid에 대한 값을 이전에 반환된 정책의 값과 일치하도록 편집합니다. 본문의 conditionMap에서 expressionvalues 아래의 값을 편집하고 앞에서 생성한 SecureIP 그룹의 groupId로 설정합니다. results에서 action의 값을 이전에 생성된 FactorGroup1 그룹의 groupId와 일치하도록 설정합니다.

    그림 createrule.jpg에 대한 설명

    위 규칙에 따르면 인증 요청을 만드는 일반 사용자의 IP 주소가 SecureIP 그룹에 정의된 주소 중 하나인 경우 인증 요소를 FactorGroup1에 정의된 IP 주소로 설정합니다.

  3. 전송을 누릅니다.

  4. 응답에서 Status: 200 OK가 나타나고 응답 본문에 생성된 규칙에 대한 세부 정보가 표시되는지 확인합니다. 나중에 참조할 수 있도록 rulegid를 기록해 두십시오.

    그림 createrulesuccess.jpg에 대한 설명

사용자 환경설정 생성

이 섹션에서는 사용자 user1를 생성하고 해당 요소 환경설정을 등록합니다.

  1. 모음 탭에서 Oracle Advanced Authentication REST API > 사용자 환경설정용 REST API -> preferences/v1로 이동합니다.

  2. User Preferences are created/Register를 선택합니다. 이 요청은 /oaa/runtime/preferences/v1 끝점에 대해 POST 요청을 수행합니다. Body에서 생성할 userId와 해당 groupId를 입력합니다. 아래 예제에서는 user1Default 그룹에 생성되어 전자메일 및 OMATOTP 요소에 대한 사용자를 등록합니다. 전자 메일 주소 값을 유효한 전자 메일 주소로 변경합니다. OMATOTP용 secret_key을 Oracle Mobile Authenticator 애플리케이션에서 사용할 값으로 변경합니다.

    createuserprefs.jpg 그림 설명

  3. 전송을 누릅니다.

  4. 응답에서 Status: 200 OK가 나타나고 사용자 및 해당 기본 설정이 성공적으로 생성되고 등록되었는지 확인합니다.

    createuserprefssuccess.jpg 그림 설명

사용자 확인, 확인 초기화 및 검증

이 섹션에서는 정책 규칙 생성에서 이전에 생성한 규칙에 대해 user1의 사용자 도전을 테스트합니다. 규칙을 검증하면 해당 사용자에 대해 등록된 요소가 반환됩니다. 인증 요소를 선택한 후 초기화 요청이 전송되어 해당 요소에 대한 OTP를 묻습니다. 그런 다음 적합한 요소 OTP를 입력하고 검증합니다.

이 섹션을 시작하기 전에 Oracle Mobile Authenticator에 Key사용자 환경설정 생성에 입력된 secret_key 값으로 설정된 Oracle 계정이 추가되었는지 확인합니다. Oracle Mobile Authenticator에서 계정 구성을 참조하십시오.

  1. 모음 탭에서 Oracle Advanced Authentication REST API > REST API for User Challenge -> Challenge User, Initalize Challenge, Validate Challenge로 이동합니다.

  2. 챌린지 사용자를 선택합니다. 이 요청은 /oaa/runtime/authn/v1 끝점에 대해 POST 요청을 수행합니다. Body에서 user1의 경우 userId 및 해당 groupId를 입력합니다. 아래 예제에서는 이전에 통합 에이전트 API 생성에서 생성한 API 통합 에이전트에 대해 user1에 대한 도전이 발생합니다. 이 API 에이전트의 clientSecretclientId 값을 입력합니다. ipAddr에서 이전에 만든 SecureIP 그룹에 정의된 IP를 입력합니다.

    Challengeuser.jpg 그림 설명

  3. 전송을 누릅니다.

  4. 응답에서 Status: 200 OK가 나타나는지 확인합니다. Authentication Required를 나타내는 OAA-40001 메시지가 반환됩니다. user1(Email 및 OMATOTP)에 등록된 요소는 correlationId과 함께 반환됩니다. 후속 요청에 사용할 correlationId를 기록해 둡니다.

    그림 Challengeusersuccess.jpg 설명

  5. Challenge User, Initalize Challenge, Validate Challenge 아래에서 Initialze Challenge를 선택합니다. 그러면 /oaa/runtime/authn/v1 끝점에 대해 PUT 요청이 수행됩니다. 본문에 이전 응답에서 반환된 correlationId을 입력합니다. 이 예제에서는 OMATOTP 요소를 사용하도록 선택합니다.

    initchallenge.jpg 그림 설명

  6. 전송을 누릅니다.

  7. 응답에서 Status: 200 OK가 나타나는지 확인합니다. OMATOTP용 Authentication Required을 나타내는 OAA-40001 메시지가 반환됩니다. 연관된 correlationId에 대해 nonce 값이 반환됩니다. 다음 요청을 사용하려면 nonce 값을 기록해 두십시오.

    initchallengesuccess.jpg 그림 설명

  8. Challenge User, Initalize Challenge, Validate Challenge 아래에서 챌린지 검증을 선택합니다. 그러면 /oaa/runtime/authn/v1 끝점에 대해 PUT 요청이 수행됩니다. Body에 이전 응답에서 반환된 correlationIdnonce를 입력합니다. Oracle Mobile Authenticator의 적합한 OTP를 ChallengeAnswer에 입력합니다.

    validate.jpg 그림 설명

  9. 전송을 누릅니다.

  10. 응답에서 Status: 200 OK가 나타나는지 확인합니다. OTP 검증이 성공하면 사용자가 Authenticated임을 알리는 OAA-40004 메시지가 반환됩니다.

    그림 validateuccess.jpg에 대한 설명

더 알아보기

피드백

이 자습서에 대한 피드백을 제공하려면 idm_user_assistance_ww_grp@oracle.com으로 문의하십시오.

감사의 글

추가 학습 자원

docs.oracle.com/learn에서 다른 실습을 찾아보거나 Oracle Learning YouTube channel에서 무료 학습 콘텐츠에 액세스할 수 있습니다. 또한 education.oracle.com/learning-explorer를 방문하여 Oracle Learning Explorer로 변경하십시오.

제품 설명서는 Oracle Help Center를 참조하십시오.