Node.js 애플리케이션 테스트

이 솔루션 섹션에서는 다음 작업을 수행할 수 있습니다.

  • 샘플 Node.js 웹 애플리케이션을 등록하여 인증을 위해 Oracle Identity Cloud Service 통합

  • Node.js 프로그래밍 언어에 Oracle Identity Cloud Service SDK를 사용하도록 애플리케이션을 설정합니다.

  • 애플리케이션 준비, 실행 및 테스트

Node.js 애플리케이션 등록

Oracle Identity Cloud Service 통신을 설정하려면 샘플 Node.js 웹 애플리케이션에 클라이언트 ID 및 암호가 필요합니다. 또한 애플리케이션에 부여할 API 권한을 구성해야 합니다.

  1. Identity Cloud Service 콘솔에서 탐색 전환기를 확장한 다음 애플리케이션 을 누릅니다.
  2. 애플리케이션 페이지에서 추가 를 누릅니다.
  3. 애플리케이션 추가 대화상자에서 보안 애플리케이션 을 누릅니다.
  4. 세부정보 창의 이름설명 필드에서 SDK Web Application 을 입력하고 다음 을 누릅니다.
  5. 클라이언트 창에서 지금 이 애플리케이션을 클라이언트로 구성 을 선택하고 다음과 같이 이 창의 필드를 채웁니다.
    필드
    허용된 권한 부여 유형 클라이언트 인증서, 새로고침 토큰권한 부여 코드 를 선택합니다.
    Https 이외의 URLs 허용 이 체크박스를 선택합니다. 응용 프로그램은 비Https 모드에서 작동합니다.
    재지정 URL http://localhost:3000/callback
    로그아웃 URL http://localhost:3000/logout
    사후 로그아웃 재지정 URL http://localhost:3000
  6. 클라이언트 창에서 아래로 스크롤하여 Identity Cloud Service 관리 APIs 에 대한 클라이언트 액세스 권한 부여 를 선택하고 아래 필드에 Identity Domain AdministratorMe 를 입력한 후 다음 을 누릅니다.
  7. 리소스 창에서 다음 을 누릅니다.
  8. 웹 계층 정책 창에서 다음 을 누릅니다.
  9. [권한 부여 ] 창에서 완료 를 누릅니다.
  10. 응용 프로그램 추가됨 대화상자에서 클라이언트 ID 및 클라이언트 암호 값(Node.js 웹 응용 프로그램에 Oracle Identity Cloud Service 값과 통합할 값이 필요하기 때문에) 을 기록한 다음 닫기 를 누릅니다.
  11. 이 애플리케이션을 Oracle Identity Cloud Service 애플리케이션과 통합하려면 활성화 를 누릅니다.
  12. 애플리케이션 활성화? 대화상자에서 애플리케이션 활성화 를 누릅니다.
  13. Identity Cloud Service 콘솔에서 콘솔의 오른쪽 상단에 있는 사용자 이름을 누른 다음 사인아웃 을 누릅니다.

Node.js 애플리케이션 설정

샘플 Node.js 애플리케이션의 코드를 업데이트하여 Node.js 프로그래밍 언어에 Oracle Identity Cloud Service SDK를 사용하도록 하십시오.

c:\temp\nodejs\auth.js 파일을 편집하고 다음 콘텐츠로 파일을 업데이트한 다음 파일을 저장합니다.

//Oracle Identity Cloud Service connection parameters as a json var
var ids = {
  oracle: {
    "ClientId": '123456789abcdefghij',
    "ClientSecret": 'abcde-12345-zyxvu-98765-qwerty',
    "ClientTenant": 'idcs-abcd1234',
    "IDCSHost": 'https://%tenant%.identity.oraclecloud.com',
    "AudienceServiceUrl" : 'https://idcs-abcd1234.identity.oraclecloud.com',
    "TokenIssuer": 'https://identity.oraclecloud.com/',
    "scope": 'urn:opc:idm:t.user.me openid',
    "logoutSufix": '/oauth2/v1/userlogout',
    "redirectURL": 'http://localhost:3000/callback'
  }
};
module.exports = ids;

ClientId 및 ClientSecret 매개변수 값의 경우 Node.js 웹 애플리케이션을 등록할 때 Oracle Identity Cloud Service에서 생성한 클라이언트 ID 및 클라이언트 암호를 사용합니다. 이 솔루션의 방법 및 함수에 대해 알아보기 항목에서 ClientTenant, IDCSHostAudienceServiceURL 매개변수의 값을 구할 수 있습니다.

Node.js 애플리케이션 실행

샘플 Node.js 웹 애플리케이션을 준비, 실행 및 테스트합니다.

  1. 명령 프롬프트 창을 열고 c:\temp\nodejs 폴더로 이동한 다음 npm install 를 입력하여 샘플 애플리케이션의 package.json 파일에 지정된 모든 필요한 모듈을 설치합니다.
  2. NodeJS_sdk.zip 파일의 콘텐츠를 애플리케이션 소스 코드의 node_modules 폴더로 추출합니다.
    이 솔루션의 Node.js SDK 다운로드 섹션에서 이 . zip 파일을 다운로드했습니다.
  3. node app.js 명령을 실행하여 애플리케이션을 시작합니다.
  4. 웹 브라우저를 열고 http://localhost:3000 URL에 액세스한 다음 로그인 을 누릅니다.
  5. 로그인 페이지에서 오른쪽에 나타나는 빨간색 Oracle 아이콘을 누르거나 와 함께 로그인할 수 있습니다.
    응용 프로그램의 로그인 폼(전자 메일비밀번호 필드, 로그인 단추) 이 작동하지 않습니다. 설명만 가능합니다.
  6. [사인인 ] 페이지에서 Oracle Identity Cloud Service 인증서를 사용하여 사인인합니다.
    Oracle Identity Cloud Service 에 사인인한 후 브라우저가 /home 페이지로 재지정됩니다. 로그인한 사용자의 이름은 페이지 오른쪽 상단에 나타납니다.
  7. 왼쪽 메뉴에서 내 프로파일 을 누릅니다.
  8. 페이지와 연관된 정보가 페이지 가운데에 나타나는지 확인합니다.