Python SDK를 사용하여 Oracle Identity Cloud Service를 통해 애플리케이션 인증에 대해 알아보기

Oracle Identity Cloud Service 인증 방식을 사용하는 Python 웹 애플리케이션을 개발하려면 Python SDK를 사용합니다. 이 SDK는 OpenID 접속 플로우를 사용하여 Oracle Identity Cloud Service에서 사용자를 인증하는 데 필요한 모든 REST API 끝점 호출을 캡슐화하므로 작업을 원활하게 수행할 수 있습니다.

Oracle Identity Cloud Service는 애플리케이션을 위한 ID 관리, SSO(Single Sign-On) 및 ID 거버넌스를 제공합니다. 또한 Oracle Cloud용 보안 플랫폼을 제공하므로 애플리케이션을 안전하고 쉽게 액세스, 개발 및 배포할 수 있습니다. Oracle Identity Cloud Service는 인증 방식을 중앙 집중화하고, 모든 비밀번호 관리 책임을 처리하고, 애플리케이션에 SSO를 제공하는 ID 제공자 역할을 할 수 있습니다.

Oracle은 Python 웹 애플리케이션을 처음부터 생성하는 대신 인증 목적으로 Oracle Identity Cloud Service와 통합할 수 있는 샘플 애플리케이션을 제공합니다. 이 응용 프로그램은 Python의 DJango 웹 프레임워크를 사용하여 개발되었습니다.

샘플 Python 웹 응용 프로그램은 두 가지 유형의 컨텐츠로 구성됩니다.

  • 공개적으로 액세스할 수 있는 페이지

  • 애플리케이션과 함께 현재 사용자 세션에 Oracle Identity Cloud Service 사용자 액세스 토큰이 존재하는지 확인하는 프라이빗 페이지

구조

다음 아키텍처 다이어그램은 Python 웹 애플리케이션이 SDK 라이브러리를 사용하여 Oracle Identity Cloud Service를 통해 3단계 OpenID Connect 인증 플로우를 수행하는 방법을 보여 줍니다. 이 인증 플로우는 권한 부여 코드 권한 부여 유형을 기반으로 하는 OAuth 2.0 권한 부여 플로우입니다. 이 권한 부여 유형을 사용하여 사용자는 Oracle Identity Cloud Service에 사인인해야 합니다. 사용자가 사인인하면 다시 인증할 필요 없이 Oracle Identity Cloud Service로 보호되는 다른 애플리케이션에 액세스할 수 있습니다.

승인 코드 부여 유형은 다음 단계로 구성됩니다.

  1. 사용자가 보호된 URL을 요청합니다.

  2. Oracle Identity Cloud Service에 [사인인] 페이지가 표시됩니다.

  3. 사용자가 로그인 자격 증명을 제출합니다.

  4. Oracle Identity Cloud Service는 Python 애플리케이션에 인증 코드를 발행합니다.

  5. Python 응용 프로그램은 SDK를 사용하여 액세스 토큰에 대한 권한 부여 코드를 교환합니다.

  6. Python 응용 프로그램은 사용자의 콘텐츠를 표시합니다.

이 솔루션의 Python 웹 응용 프로그램은 프로덕션에 게시되지 않으며 데이터 처리, 패턴 및 보안과 같은 Python 사용에 대한 모범 사례를 따르지 않습니다. 이 샘플 애플리케이션의 유일한 목적은 SDK를 사용하여 Oracle Identity Cloud Service 및 Python 웹 애플리케이션을 통합하는 방법을 설명하는 것입니다.

필수 서비스 및 역할 정보

이 솔루션을 사용하려면 Oracle Identity Cloud Service에 액세스해야 합니다.

Oracle Identity Cloud Service에 필요한 역할입니다.

서비스 이름: 역할 필수...
Oracle Identity Cloud Service: Security administrator Oracle Identity Cloud Service 콘솔의 다운로드 페이지에 액세스합니다. 이 페이지에서 Node.js SDK를 다운로드할 수 있습니다.
Oracle Identity Cloud Service: Application administrator Oracle Identity Cloud Service에서 애플리케이션을 관리합니다. 여기에는 샘플 Node.js 애플리케이션을 Oracle Identity Cloud Service에 등록하는 작업이 포함됩니다.

필요한 것을 얻으려면 Oracle 제품, 솔루션 및 서비스를 참조하십시오.