Brightcove Beacon에 대한 OIDC 인증 구성 및 테스트

이 항목에서는 Beacon 사용자를 인증하도록 OIDC 기반 자격 증명 공급자를 구성하는 방법을 알아봅니다.

서문

이 문서는 OIDC(OpenID Connect) 기반 ID 공급자를 사용하여 Brightcove Beacon 앱에서 뷰어를 인증하는 방법에 대한 구성을 자세히 설명합니다. 세부 사항으로 이동하기 전에 프로세스에 대한 큰 그림이 도움이 됩니다. Beacon 앱을 은행 ATM 기계로 생각하십시오. 사용자에게 필요한 것은 ATM의 돈에 접근하기 위한 은행 카드입니다. 마찬가지로 시청자가 Beacon 앱의 동영상에 액세스하려면 ID가 필요합니다. 다음은 유추의 엔터티와 관련된 표입니다.

ATM/은행 카드 비콘 앱
ATM 비콘 앱
거래 승인을 위한 기능/연결성 ATM OAuth 2.0
은행 카드 OIDC의 JSON 웹 토큰(JWT)
은행 카드 발급 절차 OIDC

은행 카드에 ATM과 해당 장치의 기본 기능이 있어야 하는 것처럼 OIDC도 작동하려면 OAuth가 있어야 합니다. OIDC는 OAuth의 "상단에 위치"한다고 종종 언급됩니다.

인증 설정 및 테스트

Beacon으로 OIDC 자격 증명 공급자를 구성하고 테스트하려면 다음 작업을 수행하십시오.

  1. 허용된 리디렉션 URI로 OIDC 공급자에 추가할 콜백 URL을 Brightcove에서 가져옵니다. ID 공급자는 이러한 URI를 사용하여 뷰어를 인증 코드 로그인 URL과 함께 QA 및 테스트 환경으로 리디렉션합니다. 두 환경 모두 인증 코드로 사용자를 리디렉션하기 위해 리디렉션 URI를 지정합니다.
  2. 다음 응답을 위해 API 엔드포인트를 구현하고 OTT 제공 팀에 제공합니다.
    • 액세스 토큰(JWT)
    • ID 토큰(JWT)
    • 새로 고침 토큰
    • 사용자 정보
    • 승인
    • 페어링 코드 - Smart TV, Android TV, Fire TV 또는 Apple TV가 범위 내에 있는 경우에만 필요합니다. Roku에 대한 참고 사항 참조
    • JWKS
    • 로그 아웃
    • OpenID Connect Discovery(/.well-known/openid-configuration) - 올바르게 구성되고 제공되는 경우 OTT 제공 팀은 엔드포인트를 검색하고 f단계에서 설명한 대로 Beacon 엔지니어링 티켓을 제공할 수 있습니다. 아래에
  3. ID 공급자가 요구하는 경우 로그인 및 로그아웃에 대한 리디렉션 URL을 허용된 리디렉션 URL로 구성합니다.
  4. 범위 내 모든 앱에 대한 클라이언트 ID를 생성하여 OTT 제공 팀에 제공합니다.
  5. ID 공급자에서 테스트 사용자를 생성하고 OTT 제공 팀에 테스트 자격 증명을 제공합니다.

참고로 Brightcove 법인은 다음을 수행합니다.

  1. OTT 전송 팀은 OTT 보드의 Beacon CMS에 대해 위의 2단계와 5단계의 데이터로 티켓을 생성합니다.
  2. OTT 딜리버리 팀은 OTT 보드의 Beacon Beacon 앱에 대해 위의 4단계와 5단계의 데이터를 사용하여 티켓을 만듭니다.
  3. Beacon CMS 팀은 위 6단계의 URL로 Beacon CMS를 구성합니다.
  4. 비콘 앱 팀은 위 5단계의 클라이언트 ID로 앱을 구성하고 제공된 테스트 사용자로 개발 테스트를 수행합니다.
  5. OTT 제공 팀 QA 팀은 UAT 릴리스에 대한 빌드를 검증하기 전에 종단 간 인증을 검증합니다.

토큰 및 사용자 응답

OIDC 기반 자격 증명 공급자가 뷰어를 인증하는 데 다음과 같은 세 가지 토큰이 관련됩니다.

  • access_token
  • id_token
  • refresh_token

액세스 토큰

액세스 토큰에는 인증 지원만을 위한 다음 클레임이 있어야 합니다.

  • 보결
  • 이스
  • 경험치
  • 음성(요청한 경우에만)

다음은 OIDC 제공자 토큰 엔드포인트가 제공할 수 있는 액세스 토큰 응답의 예입니다.

액세스 토큰 원시

디코딩된 액세스 토큰은 다음과 같습니다.

액세스 토큰이 디코딩됨

ID 토큰

ID 토큰에는 인증 지원에만 다음과 같은 클레임이 있어야 합니다.

  • 보결
  • 이스
  • 경험치
  • 소리
  • 목하

다음은 OIDC 제공자 토큰 엔드포인트가 제공할 수 있는 ID 토큰 응답의 예입니다.

ID 토큰 원시

디코딩된 ID 토큰은 다음과 같습니다.

id 토큰이 디코딩됨

새로 고침 토큰

새로 고침 토큰은 식별자일 뿐입니다. 데이터가 포함되어 있지 않습니다. 데이터는 토큰 자체입니다.

사용자 정보 응답

사용자 정보 응답은 JSON 객체이며 인증 지원만을 위한 다음 필드가 있어야 합니다.

  • 보결
  • name/nickname/full_name/displayName(하나 이상)
  • 이메일

다음은 사용자 정보 응답의 예입니다.

사용자 정보 응답

알려진 문제

  • Roku 구현의 경우 Brightcove 글로벌 서비스와의 맞춤형 계약이 필요합니다. 이는 Roku의 인증 요구 사항 때문입니다. 이렇게 하지 않으면 Roku에서 채널이 Roku 스토어에 게시되는 것을 거부하게 됩니다. 자세한 내용은 Roku의 온디바이스 인증 문서를 참조하십시오.