인증 API 사용

이 항목에서는 Brightcove 재생 제한을 사용할 때 키/라이선스 보호를 관리하는 데 사용되는 API에 대해 알아봅니다.

서문

Brightcove 재생 제한은 DRM 보호 또는 HTTP HLSe(Live Streaming Encryption) 콘텐츠와 함께 Dynamic Delivery를 사용할 때 추가 보안 수준을 제공합니다.

이 기능에 익숙하지 않은 경우개요를 참조하십시오. 브라이트코브 재생 제한문서.

키/라이선스 보호 관리에 사용할 수 있는 API는 다음과 같습니다.

공개 키 등록

개인 키를 소유하고 있으며 이를 사용하여 서명된 토큰을 생성합니다. 공개 키를 Brightcove와 공유하여 토큰을 확인합니다. 키 API를 사용하면 공개 키를 Brightcove에 등록할 수 있습니다.

키 API

Key API는 브라이트코브를 통해 공개 키를 관리하는 데 사용됩니다.

기본 URL

API의 기본 URL은 다음과 같습니다.

https://playback-auth.api.brightcove.com

계정 경로

모든 경우에 특정 Video Cloud 계정에 대한 요청이 이루어집니다. 따라서 항상 용어 계정을 추가하고 계정 ID를 기본 URL에 추가합니다.

https://playback-auth.api.brightcove.com/v1/accounts/{accountID}

권한

요청에 대한 액세스 토큰이 필요하며 권한 부여 헤더에 있어야합니다.

Authorization: Bearer {access_token}

액세스 토큰은 Brightcove OAuth 서비스에서 얻어야하는 임시 OAuth2 액세스 토큰입니다. 클라이언트 자격 증명을 얻고 이를 사용하여 액세스 토큰을 검색하는 방법에 대한 자세한 내용은 Brightcove OAuth 개요를 참조하십시오 .

사용 권한

Key API에 대한 요청은 다음에서 이루어져야 합니다. 클라이언트 자격 증명다음 권한으로:

  • video-cloud/playback-auth/key/read
  • video-cloud/playback-auth/key/write

키 관리

키 API는 다음 요청을 지원합니다.

새 키 등록:

공개 키의 값을 API 요청 본문에 넣으십시오. public_key.txt파일에서 키를 찾을 수 있습니다.

API 요청

POST /v1/accounts/{accountID}/keys
    Content-Type: application/json
    Body: {"value": "MFkwEwYHKoZIzj0CAQYIKoZIzj...MyeQviqploA=="}

컬링 사용

컬 -X 포스트\
    -H “콘텐츠 유형: 응용 프로그램/json”\
    -H “권한 부여: 무기명 {액세스 토큰}”\
    -d '{"값”: “{사용자 공개 키 값}"}'\
  https://playback-auth.api.brightcove.com/v1/accounts/{accountID}/keys
  

API 응답

{
    "id": "{your_public_key_id}",
    "type": "public",
    "algorithm": "rsa",
    "value": "{your_public_key_value}",
    "createdAt": "2020-01-03T20:30:36.488Z"
  }

키 나열:

계정의 공개 키 목록을 가져옵니다.

GET /v1/accounts/{accountID}/keys

하나의 키 받기:

계정의 공개 키에 대한 세부 정보를 가져옵니다.

GET /v1/accounts/{accountID}/keys/{key_Id}

하나의 키 삭제:

계정에서 공개 키를 삭제합니다.

DELETE /v1/accounts/{accountID}/keys/{key_Id}

블랙리스트 토큰

블랙리스트에 오른 토큰은 그렇지 않으면 승인되었을지라도 라이선스 요청에 유효한 것으로 간주되지 않습니다. 고객은 최대 100 개의 토큰을 블랙리스트에 올릴 수 있습니다. 100 개의 토큰이 이미 블랙리스트에있는 경우 고객은 추가 항목을위한 공간을 확보하기 위해 하나 이상의 토큰을 삭제해야합니다.

블랙리스트 API

Blacklist API는 블랙리스트에 등록되어 있고 라이선스 요청에 유효하지 않은 것으로 간주되는 토큰을 관리하는 데 사용됩니다.

기본 URL

Blacklist API의 기본 URL은 다음과 같습니다.

https://playback-auth.api.brightcove.com

계정 경로

모든 경우에 특정 Video Cloud 계정에 대한 요청이 이루어집니다. 따라서 항상 기본 URL에 계정이라는 용어와 계정 ID를 추가합니다.

https://playback-auth.api.brightcove.com/v1/accounts/{accountID}/blacklist

권한

요청에 대한 액세스 토큰이 필요하며 권한 부여 헤더에 있어야합니다.

Authorization:  Bearer  {access_token}

액세스 토큰은 Brightcove OAuth 서비스에서 얻어야하는 임시 OAuth2 액세스 토큰입니다. 클라이언트 자격 증명을 얻고 이를 사용하여 액세스 토큰을 검색하는 방법에 대한 자세한 내용은 Brightcove OAuth 개요를 참조하십시오 .

권한

Blacklist API에 대한 요청은 다음에서 이루어져야 합니다. 클라이언트 자격 증명다음 권한으로:

  • video-cloud/playback-auth/blacklist

블랙리스트에있는 토큰 관리

블랙리스트 업데이트가 시스템 전체에 전파되는 데 최대 1분이 걸릴 수 있습니다. Blacklist API는 다음 요청을 지원합니다.

블랙리스트에 토큰 추가:

PUT  (no  req  body)/v1/accounts/{accountID}/blacklist/tokens/{token}

인코딩된 전체 JWT 문자열이 경로에 포함됩니다.

현재 블랙리스트 보기:

GET  /v1/accounts/{accountId}/blacklist

토큰이 블랙리스트에 있는지 확인하십시오.

GET  /v1/accounts/{accountID}/blacklist/tokens/{token}

인코딩된 전체 JWT 문자열이 경로에 포함됩니다.

응답:

  • 204-토큰이 블랙리스트에 있습니다.
  • 404-토큰이 블랙리스트에 없습니다.

블랙리스트에서 토큰 제거:

DELETE  /v1/accounts/{accountID}/blacklist/tokens/{token}

인코딩된 전체 JWT 문자열이 경로에 포함됩니다.

계정 감사

감사 API를 사용하면 계정의 재생 인증 서비스 사용에 대한 일일 액세스 보고서를 생성 할 수 있습니다. 이 보고서에는 각 세션에 대한 승인 응답과 함께 세부 정보가 포함됩니다.

감사 API

감사 API에 대한 세부 정보는 다음과 같습니다.

기본 URL

감사 API의 기본 URL은 다음과 같습니다.

https://playback-auth.api.brightcove.com

계정 경로

모든 경우에 특정 Video Cloud 계정에 대한 요청이 이루어집니다. 따라서 항상 기본 URL에 계정이라는 용어와 계정 ID를 추가합니다.

https://playback-auth.api.brightcove.com/v1/audit/accounts/{accountID}

권한

요청에 대한 액세스 토큰이 필요하며 권한 부여 헤더에 있어야합니다.

Authorization:  Bearer  {access_token}

액세스 토큰은 Brightcove OAuth 서비스에서 얻어야하는 임시 OAuth2 액세스 토큰입니다. 클라이언트 자격 증명을 얻고 이를 사용하여 액세스 토큰을 검색하는 방법에 대한 자세한 내용은 Brightcove OAuth 개요를 참조하십시오 .

권한

Audit API에 대한 요청은 다음에서 이루어져야 합니다. 클라이언트 자격 증명다음 권한으로:

  • video-cloud/playback-auth/audit

보고서 생성

감사 API를 사용하여 다음 단계에 따라 세션 세부 정보가 포함 된 일일 액세스 보고서를 생성합니다.

  1. 일일 사용 보고서 요청

    매개변수

    필드 유형 설명
    accountID 문자열 Video Cloud 계정 ID
    date 문자열 검증:
    • 형식 YYYY-MM-DD
    • 날짜는 오늘 (UTC 시간)이 될 수 없습니다.
    • 날짜는 과거 30일보다 길 수 없습니다.
    • Brightcove는 GDPR 준수를 따르기 위해 30 일 후에 권한 부여 서비스 사용 보고서를 보관하지 않습니다.

    요청

    방법 우편
    URL https://playback-auth.api.brightcove.com/v1/audit/accounts/ {계정ID} /query/ {date}
    헤더 권한 부여: 액세스 토큰 전달자
    콘텐츠 유형: 응용 프로그램/json

    대응

    샘플 응답 (200 확인):

    {
    	"executionID":  "abcdef-asfdag-dvsbcd"
    }

    세부 정보:

    필드 유형 설명
    executionID 문자열 지정된accountID및 에 대한 사용 보고서와 연결된 고유date ID입니다. 이 ID는 아래의 다른 엔드 포인트로 전달됩니다.
  2. 신고 상태 확인

    요청

    방법 얻다
    URL https://playback-auth.api.brightcove.com/v1/audit/accounts/ {계정ID} /실행/ {ExecutionID} /status
    헤더 권한 부여: 액세스 토큰 전달자
    콘텐츠 유형: 응용 프로그램/json

    대응

    샘플 응답 (200 확인):

    {
    	"status":  "completed"
    }
    

    세부 정보:

    필드 유형 설명
    status 문자열 값: “완료”, “처리 중”, “실패”
  3. 보고서 가져 오기

    요청

    방법 얻다
    URL https://playback-auth.api.brightcove.com/v1/audit/accounts/ {계정ID} /실행/ {ExecutionID} /보고서
    헤더 권한 부여: 액세스 토큰 전달자
    콘텐츠 유형: 응용 프로그램/json

    대응

    샘플 응답 (200 확인):

    {
        "signedURL":  "https://signed-url",
        "expirationTime":  1569219842
    }
    

    세부 정보:

    필드 유형 설명
    SignedURL 문자열 결과는 다운로드 할 수있는 S3 URL로 반환됩니다.
    expirationTime Epoch 타임 스탬프 서명 된 S3 URL은 15 분 동안 유효합니다.

제한 사항

이 기능의 초기 릴리스에는 다음 제한 사항이 적용됩니다.

  • 블랙리스트에 등록 된 토큰은 100 개로 제한됩니다. 그 후 오류가 발생합니다.