OAuth 사용자 시나리오
` OAuth `와 ` IBM® API Connect `를 사용하는 잠재적 사용자는 API 보안을 강화할 수 있는 여러 가지 방법을 활용할 수 있습니다. 다음 시나리오는 사용 가능한 옵션의 개요를 제공합니다.
시나리오 개요
이 시나리오에서 Alice는 애플리케이션 사용자입니다. Alice는 OAuth를 사용하는 써드파티 시스템에 있는 자신에 대한 특정 정보에 액세스할 수 있는 권한을 애플리케이션에 부여할 수 있습니다. 대상 서비스에서 지원하는 OAuth 유형에 따라 Alice는 사용자 이름 및 비밀번호를 애플리케이션에 입력하지 않습니다. 대신, 애플리케이션이 신임 정보(사용자 이름 및 비밀번호)를 나타내는 액세스 토큰을 수신합니다. 그러면 애플리케이션은 대상 시스템에 있는 Alice에 대한 정보에 액세스할 수 있습니다.
예를 들어, Alice는 mybooks.com에서 제공하는 서비스를 통해 읽는 도서의 목록을 유지보수합니다. 스마트폰 구매 후 Alice는 새 전화에 애플리케이션을 설치하여 도서 세부사항을 표시합니다. 전화 애플리케이션은 mybooks.com에서 제공하는, 정보에 액세스할 수 있는 API를 호출하려고 합니다. mybooks.com API는 OAuth 프로토콜을 사용하여 보안됩니다.
- 애플리케이션은 먼저 Alice로부터 권한을 얻어야 합니다.
- 그런 다음, 애플리케이션은 해당 권한을 사용하여 대상 서비스를 호출하고 도서 목록을 가져옵니다.
첫 번째 단계에서 애플리케이션은 일반적으로 Alice를 대상 서비스 제공자 mybooks.com으로 디렉션합니다. Alice는 사용자 이름 및 비밀번호를 제공하고 애플리케이션이 자신의 정보에 액세스할 수 있도록 권한을 부여합니다. Alice가 신뢰할 수 없는 프록시 애플리케이션이 아니라, 대상 서비스 제공자에게 신임 정보를 제공함을 신뢰하는 것이 중요합니다. 예를 들어, Alice가 신임 정보를 입력하는 웹 사이트의 보안 인증이 대상 서비스 제공자에게서 예상할 수 있는 것과 동일한지 확인할 수 있습니다.
이 단계의 결과로 얻게 되는 액세스 토큰을 사용하여 애플리케이션이 API 호출을 수행할 수 있습니다. 그런 다음 애플리케이션은 적절하게 형식화된 OAuth 요청을 생성합니다. 예를 들어, OAuth에서 요구하는 액세스 토큰, 컨슈머 키 및 서명 메소드가 포함된 HTTP 조회 매개변수 또는 권한 헤더를 생성할 수 있습니다. 이 OAuth 요청은 API 프록시 오퍼레이션을 호출하는 데 사용됩니다.
API Connect 내의 시나리오
- Alice는 API 호출 전에 정보에 액세스할 수 있는 권한을 애플리케이션에 대해 부여합니다.
- 애플리케이션이 오퍼레이션 엔드포인트 호출에 대한 OAuth 세부사항이 포함된 권한 헤더 또는 조회 매개변수를 제공하면 추가 구성 없이 자동으로 헤더가 대상 서비스에 전달됩니다.