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 설치
- 모바일 장치에 설치된 Oracle Mobile Authenticator
- REST 구조 스타일에 대한 기본적인 이해
- 고유 Postman 클라이언트 v8.0.6 이상 설치됨
- json 파일 Oracle_Advanced_Authentication_REST_API.postman_collection.json, Oracle_Advanced_Authentication_Example_Environment.postman_environment.json
Oracle Advanced Authentication Postman 모음 설치
Postman에서 환경 매개변수 설정
-
Postman을 열고 파일 > 임포트를 선택합니다.
-
임포트 대화상자의 파일 탭에서 파일 업로드를 선택합니다. Oracle_Advanced_Authentication_Example_Environment.postman_environment.json을 선택하고 Open을 누릅니다.
-
왼쪽 메뉴에서
을 누릅니다.
-
표시된 환경 목록에서 Oracle Advanced Authentication Example Environment의 오른쪽에 있는 엘립스를 누른 다음 복제를 누릅니다.
-
원래 환경 위에 나타나는 Oracle Advanced Authentication Example Environment Copy에서 elipsis를 누르고 이름을
Oracle Advanced Authentication Environment for REST APIs
로 바꿉니다. -
초기 값 및 현재 값에 대해 다음 값을 입력하여 새 환경에 대한 환경 변수를 업데이트합니다. 완료되면 탭에서 저장, 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-policy
및oaa-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
이 환경은 다음과 같이 표시됩니다.
주: 위 예의 URL 값은 NodePort을 사용하여 OAA 설치를 가정하므로 각 POD에 대한 포트 번호가 URL에 정의되어 있습니다. OAA 설치에서 수신을 사용하는 경우 모든 경우에 수신 URL을 사용합니다.
- oaa-admin: Oracle Advanced Authentication 호스트 이름 및 관리 포트(예:
-
환경 드롭다운 목록을 누른 다음 목록에서 업데이트된 환경을 선택합니다.
Postman 모음 가져오기
-
Oracle Advanced Authentication REST API Postman 모음을 임포트하려면 Postman 기본 페이지에서 파일 > 임포트를 선택합니다.
-
임포트 대화상자의 파일 탭에서 파일 업로드를 선택합니다. Oracle_Advanced_Authentication_REST_API.postman_collection.json 파일을 선택한 다음 열기, 임포트를 차례로 누릅니다.
왼쪽 메뉴에서 모음을 누릅니다. 컬렉션은 다음과 같이 표시되어야 합니다.
REST API 테스트
이 섹션에서는 Postman 모음에서 Oracle Advanced Authentication에 대한 일부 요청을 실행합니다.
주: SSL 인증서 확인 오류를 방지하려면 파일 > 설정으로 이동하고 일반 사항 탭에서 SSL 인증서 확인을 OFF로 설정합니다.
API 통합 에이전트 생성
이 섹션에서는 API 통합 에이전트를 생성합니다.
-
모음 탭에서 Oracle Advanced Authentication REST API > 시스템 엔티티 정의를 위한 REST API -> agent/v1로 이동합니다.
-
새 API 통합 에이전트 생성을 선택합니다. 이 요청은
/oaa-policy/agent/v1
끝점에 대해 POST 요청을 수행하고 Body에 있는 정보를 기반으로APIAgent
라는 API 통합 에이전트를 생성합니다. -
전송을 누릅니다.
-
응답에서
Status: 200 OK
가 나타나고 응답 본문에 생성된 통합 에이전트에 대한 세부 정보가 표시되는지 확인합니다. 반환된agentgid
은 다음 섹션에서 사용되므로 기록해 두십시오.
보증 수준 생성
이 섹션에서는 생성된 통합 에이전트에 대한 보증 수준을 생성합니다.
-
모음 탭에서 Oracle Advanced Authentication REST API > 시스템 엔티티 정의를 위한 REST API -> AssuranceLevel/v1로 이동합니다.
-
보증 레벨 정의를 선택합니다. 이 요청은
/oaa-policy/assuranceLevel/v1
끝점에 대해 POST 요청을 수행하고AssuranceLevel1
이라는 통합 에이전트에 대한 Assurance Level을 생성합니다. 본문에서 이전에 반환된 값과 일치하도록agentid
의 값을 편집합니다. -
전송을 누릅니다.
-
응답에서
Status: 200 OK
가 나타나고 응답 본문에 생성된 보증 레벨에 대한 세부 정보가 표시되는지 확인합니다.
그룹 생성
이 섹션에서는 계수에 대한 작업 그룹과 IP 주소에 대한 그룹을 생성합니다. 이 그룹은 나중에 이전에 생성된 통합 에이전트 및 보증 레벨에 대한 정책 및 규칙에 지정됩니다.
-
[컬렉션] 탭에서 Oracle Advanced Authentication REST API > 시스템 엔티티 정의를 위한 REST API -> 그룹/v1로 이동합니다.
-
새 요소 그룹 생성을 선택합니다. 이 요청은
/oaa-policy/group/v1
끝점에 대해 POST 요청을 수행하고FactorRuleGrp1
라는 에이전트에 대한 그룹을 생성합니다. 본문에서agentid
의 값을 이전에 반환된 값과 일치하도록 편집합니다. 이 예에서 그룹은ChallengeEmail
및ChallengeOMATOTP
의 두 가지 요소를 설정합니다. -
전송을 누릅니다.
-
응답에서
Status: 200 OK
가 나타나고 응답 본문에 생성된 그룹에 대한 세부 정보가 표시되는지 확인합니다. 나중에 이 그룹을 정책에 지정하는 데 사용되므로groupid
를 기록해 두십시오. -
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
로 설정합니다. -
전송을 누릅니다.
-
응답에서
Status: 200 OK
가 나타나고 응답 본문에 생성된 그룹에 대한 세부 정보가 표시되는지 확인합니다. 나중에 이 그룹을 정책에 지정하는 데 사용되므로groupid
를 기록해 두십시오.
정책 생성
이 섹션에서는 이전에 생성된 보증 수준 및 통합 에이전트에 대한 정책을 생성합니다.
-
모음 탭에서 Oracle Advanced Authentication REST API > 시스템 엔티티 정의를 위한 REST API -> policy/v1으로 이동합니다.
-
새 정책 생성을 선택합니다. 이 요청은
/oaa-policy/policy/v1
끝점에 대해 POST 요청을 수행하고 이전에 생성한 통합 에이전트 및Policy1
라는 보증 레벨에 대한 정책을 생성합니다. 본문에서 이전에 반환된 값과 일치하도록agentgid
의 값을 편집합니다. -
전송을 누릅니다.
-
응답에서
Status: 200 OK
가 나타나고 응답 본문에 생성된 정책에 대한 세부 정보가 표시되는지 확인합니다.policygid
는 나중에 이 정책에 규칙을 지정하므로 기록해 두십시오.
정책 규칙 생성
이 섹션에서는 정책에 대한 정책 규칙을 생성합니다.
-
모음 탭에서 Oracle Advanced Authentication REST API > 시스템 엔티티 정의를 위한 REST API -> policy/v1 -> {policygid} -> 규칙 > {ruleid}로 이동합니다.
-
정책에 대한 새 규칙 정의를 선택합니다. 이 요청은
/oaa-policy/policy/v1/:policygid/rule
끝점에 대해 POST 요청을 수행합니다. [매개변수] 탭에서policygid
에 대한 값을 이전에 반환된 정책의 값과 일치하도록 편집합니다. 본문의conditionMap
에서expression
및values
아래의 값을 편집하고 앞에서 생성한SecureIP
그룹의groupId
로 설정합니다.results
에서action
의 값을 이전에 생성된FactorGroup1
그룹의groupId
와 일치하도록 설정합니다.위 규칙에 따르면 인증 요청을 만드는 일반 사용자의 IP 주소가
SecureIP
그룹에 정의된 주소 중 하나인 경우 인증 요소를FactorGroup1
에 정의된 IP 주소로 설정합니다. -
전송을 누릅니다.
-
응답에서
Status: 200 OK
가 나타나고 응답 본문에 생성된 규칙에 대한 세부 정보가 표시되는지 확인합니다. 나중에 참조할 수 있도록rulegid
를 기록해 두십시오.
사용자 환경설정 생성
이 섹션에서는 사용자 user1
를 생성하고 해당 요소 환경설정을 등록합니다.
-
모음 탭에서 Oracle Advanced Authentication REST API > 사용자 환경설정용 REST API -> preferences/v1로 이동합니다.
-
User Preferences are created/Register를 선택합니다. 이 요청은
/oaa/runtime/preferences/v1
끝점에 대해 POST 요청을 수행합니다. Body에서 생성할userId
와 해당groupId
를 입력합니다. 아래 예제에서는user1
가Default
그룹에 생성되어 전자메일 및 OMATOTP 요소에 대한 사용자를 등록합니다. 전자 메일 주소 값을 유효한 전자 메일 주소로 변경합니다. OMATOTP용secret_key
을 Oracle Mobile Authenticator 애플리케이션에서 사용할 값으로 변경합니다. -
전송을 누릅니다.
-
응답에서
Status: 200 OK
가 나타나고 사용자 및 해당 기본 설정이 성공적으로 생성되고 등록되었는지 확인합니다.
사용자 확인, 확인 초기화 및 검증
이 섹션에서는 정책 규칙 생성에서 이전에 생성한 규칙에 대해 user1
의 사용자 도전을 테스트합니다. 규칙을 검증하면 해당 사용자에 대해 등록된 요소가 반환됩니다. 인증 요소를 선택한 후 초기화 요청이 전송되어 해당 요소에 대한 OTP를 묻습니다. 그런 다음 적합한 요소 OTP를 입력하고 검증합니다.
이 섹션을 시작하기 전에 Oracle Mobile Authenticator에 Key
가 사용자 환경설정 생성에 입력된 secret_key
값으로 설정된 Oracle 계정이 추가되었는지 확인합니다. Oracle Mobile Authenticator에서 계정 구성을 참조하십시오.
-
모음 탭에서 Oracle Advanced Authentication REST API > REST API for User Challenge -> Challenge User, Initalize Challenge, Validate Challenge로 이동합니다.
-
챌린지 사용자를 선택합니다. 이 요청은
/oaa/runtime/authn/v1
끝점에 대해 POST 요청을 수행합니다. Body에서user1
의 경우userId
및 해당groupId
를 입력합니다. 아래 예제에서는 이전에 통합 에이전트 API 생성에서 생성한 API 통합 에이전트에 대해user1
에 대한 도전이 발생합니다. 이 API 에이전트의clientSecret
및clientId
값을 입력합니다.ipAddr
에서 이전에 만든SecureIP
그룹에 정의된 IP를 입력합니다. -
전송을 누릅니다.
-
응답에서
Status: 200 OK
가 나타나는지 확인합니다.Authentication Required
를 나타내는OAA-40001
메시지가 반환됩니다.user1
(Email 및 OMATOTP)에 등록된 요소는correlationId
과 함께 반환됩니다. 후속 요청에 사용할correlationId
를 기록해 둡니다. -
Challenge User, Initalize Challenge, Validate Challenge 아래에서 Initialze Challenge를 선택합니다. 그러면
/oaa/runtime/authn/v1
끝점에 대해 PUT 요청이 수행됩니다. 본문에 이전 응답에서 반환된correlationId
을 입력합니다. 이 예제에서는 OMATOTP 요소를 사용하도록 선택합니다. -
전송을 누릅니다.
-
응답에서
Status: 200 OK
가 나타나는지 확인합니다. OMATOTP용Authentication Required
을 나타내는OAA-40001
메시지가 반환됩니다. 연관된correlationId
에 대해nonce
값이 반환됩니다. 다음 요청을 사용하려면nonce
값을 기록해 두십시오. -
Challenge User, Initalize Challenge, Validate Challenge 아래에서 챌린지 검증을 선택합니다. 그러면
/oaa/runtime/authn/v1
끝점에 대해 PUT 요청이 수행됩니다. Body에 이전 응답에서 반환된correlationId
및nonce
를 입력합니다. Oracle Mobile Authenticator의 적합한 OTP를ChallengeAnswer
에 입력합니다. -
전송을 누릅니다.
-
응답에서
Status: 200 OK
가 나타나는지 확인합니다. OTP 검증이 성공하면 사용자가Authenticated
임을 알리는OAA-40004
메시지가 반환됩니다.
더 알아보기
- Oracle 고급 인증
- OAA 관리 API
- OAA 런타임 API
- Oracle Advanced Authentication for Multi-Factor Authentication과 함께 Oracle RADIUS 에이전트 사용
- Oracle Access Management와 Oracle Advanced Authentication 통합
피드백
이 자습서에 대한 피드백을 제공하려면 idm_user_assistance_ww_grp@oracle.com으로 문의하십시오.
감사의 글
- 작성자 - Russ Hodgson
추가 학습 자원
docs.oracle.com/learn에서 다른 실습을 찾아보거나 Oracle Learning YouTube channel에서 무료 학습 콘텐츠에 액세스할 수 있습니다. 또한 education.oracle.com/learning-explorer를 방문하여 Oracle Learning Explorer로 변경하십시오.
제품 설명서는 Oracle Help Center를 참조하십시오.
Use Oracle Advanced Authentication REST APIs with Postman
F53377-01
February 2022
Copyright © 2022, Oracle and/or its affiliates.