入門
Brightcoveの再生権限管理サービスは、動画再生を管理するスケーラブルで表現力豊かな方法を提供します。
この機能に慣れていない場合は、「概要」を参照してください。Brightcoveの再生制限資料。
検証プロセス
再生権は、特異性と一致の順に適用されます。許可ルールは、ルールを許可するルールよりも具体性が低いため、残りのルールを無効にします。
特定のIPを許可して、そのIPの国のルールを回避することができます。また、国の制限によって通常許可される別のIPをブロックすることもできます。したがって、両方を持つことは理にかなっていますblock-ips
そしてallow-ips
同じ再生権の定義で。同じことが他のルールにも当てはまります。
ほとんどの権利について、許可ルールとブロックルールを設定できます。両方を持つことが意味をなさないかもしれない国は唯一の国です。
次のフロー図は、検証プロセスがどのように機能するかを示しています。
- 地理的チェック
- スケジュールチェック
- プロキシチェック
- ドメインチェック
地理的チェック
地理的制限のフローは、の値に基づいて、次の図のいずれかになります。geo_global_rule
分野:
geo_global_rule
に設定されていますallow_all
geo_global_rule
に設定されていますblock_all
geo_global_rule
に設定されていますnull
地理的チェックに合格した場合は、次の図の追加のチェックに進みます。
追加の検証チェック
地理的チェックに合格すると、次のチェックが順番に処理されます。
- スケジュールチェック
- プロキシチェック
- ドメインチェック
ワークフロー
再生制限を管理するには、次の手順に従います。
アカウントを設定する
この機能は、Playback Rights Management サービスの制限付き可用性フェーズにアクセスできる特定のお客様を対象としています。詳細はアカウントマネージャーにお問い合わせください。
OAuth認証情報を生成する
あなたのBC_TOKEN
と口座番号。
- ビデオクラウドスタジオにログインします。の中に管理者ドロップダウン、選択口座情報。あなたのコピーアカウントID。
-
Studioの任意のページを開いた状態で、ブラウザの開発ツールを開き、コンソールに移動して、次のコードに貼り付けます。
var cookiesArray = document.cookie.split(";;";), cookiesObj = {}, i, tmpArray = []; for (i = 0; i < cookiesArray.length; i++) { tmpArray = cookiesArray[i].split(";=";); if (tmpArray[0].indexOf('BC_TOKEN') > -1) { cookiesObj.BC_TOKEN = tmpArray[1]; } } window.prompt(";BC_TOKEN:", cookiesObj.BC_TOKEN);
キーを押して return キーを押します
-
あなたを含むプロンプトが表示されるはずです
BC_TOKEN
クライアントの資格情報を要求する
Playback RightsAPIのアカウント権限を追加します。
- Playplay Rights APIのクライアント資格情報を作成する最も簡単な方法は、このオンラインアプリ資格情報を作成するときに、次の権限が含まれていることを確認してください。
- OAuth APIを直接使用して認証情報を生成する場合は、次の手順に進みます。
-
これは、必要な権限を持つOAuthクライアントリクエストの例です。見るBC_TOKENを取得する BC_TOKENの取得についての情報。
curl \\ --include \\ --header ";認証:BC_TOKEN あなたのBC_TOKEN "; \\ --data {name = demo&maximum_scope = [{"; identity ";:{"; type ";:"; video-cloud-account "、"; account-id ";:あなたのアカウントID }、 "; operations";:["video-cloud / playback-auth / playback-rights / read"、 "video-cloud / playback-auth / playback-rights / write"、 "video-cloud / video / read" 、 "video-cloud / video / create"、 "video-cloud / video / update"、 "video-cloud / video / delete"、 "video-cloud / playback-auth / key / read"、 "video-cloud /再生-認証/キー/書き込み "; ]}]} \\ https://oauth.brightcove.com/v4/client_credentials
-
API応答から、
client_id
そしてclient_secret
。これらを使用して、Playback RightsAPIにリクエストを送信するときにアクセストークンを生成します。
制限を定義する
再生権利APIを使用して、ビデオ再生制限を定義します。
再生権API
各再生権限制限オブジェクトは、1 つまたは複数のビデオで使用できます。
ベース URL
API のベース URL は次のとおりです。
https://playback-rights.api.brightcove.com/v1
アカウントパス
いずれの場合も、特定の Video Cloud アカウントに対してリクエストが行われます。したがって、あなたは常にベースURLにアカウントIDが続く用語アカウントを追加します。
https://playback-rights.api.brightcove.com/v1/accounts/{accountID}
認証
リクエストのアクセストークンが必要であり、Authorizationヘッダに存在する必要があります።
Authorization: Bearer {access_token}
アクセストークンは、一時的な OAuth2 アクセストークンで、Brightcove OAuth サービスから取得する必要があります。クライアントクレデンシャルを取得してアクセストークンを取得する方法の詳細については、「 Brightcove OAuth の概要」を参照してください。
権限
Playback Rights API へのリクエストは、次のアクセス許可を持つクライアント認証情報から行う必要があります。
-
video-cloud/playback-auth/playback-rights/read
-
video-cloud/playback-auth/playback-rights/write
制限の管理
Playback Rights APIは、次のリクエストをサポートしています。APIの詳細については、再生権利APIリファレンス。
新しい再生権を作成する
POST /v1/accounts/{accountID}/playback_rights
Content-Type: application/json
Body: {playback rights object}
有効なフィールドのリストについては、リクエスト本文のセクションを参照してください。
カールの例
オーストラリアでのみ有効な再生権を作成します。
curl -X POST \\ https://playback-rights.api.brightcove.com/v1/accounts/ {your_account_id} / playback_rights \\ -H '認証:ベアラー{access_token}' \\ -H 'コンテンツタイプ:application / json' \\ -NS ' { ";geo";: { ";allowed_countries";: [ ";AU"; ] } } '
API レスポンス
を助けてplayback_rights_id
後で使用するための値。この値はAPI応答で見つけることができます。どちらか:
-
応答ヘッダー:
ザ・
playback_rights_id
値はで見つけることができますLocation
ヘッダー応答のフィールド。これはこれに似ているはずです:Location: /v1/accounts/your account_id/playback_rights/your playback_rights_id
-
レスポンスボディ
ザ・
playback_rights_id
値は、応答本文に次のように表示されます。id
フィールド。これはこれに似ているはずです:{ ";id";: ";your playback_rights_id", ";geo";: { ";allowed_countries";: [ ";MX", ";US";] }
アカウントのすべての再生権を取得する
GET /v1/accounts/{accountID}/playback_rights
アカウントの特定の再生権を取得する
GET /v1/accounts/{accountID}/playback_rights/{playbackRightsID}
特定の再生権を更新します。
PUT /v1/accounts/{accountID}/playback_rights/{playbackRightsID}
Content-Type: application/json
Body: {playback rights object}
有効なフィールドのリストについては、リクエスト本文のセクションを参照してください。
特定の再生権を削除します。
DELETE /v1/accounts/{accountID}/playback_rights/{playbackRightsID}
リクエスト本文
リクエスト本文に含めることができるすべてのフィールドの例を次に示します。
{
";geo";: {
";allowed_countries";: [
";MX",
";US";
],
";blocked_countries";: [
";JP",
";CN";
],
";allowed_zip_codes";: [
";US-90210";
],
";blocked_zip_codes";: [
";US-72810";
],
";allowed_dmas";: [
501
],
";blocked_dmas";: [
803
]
},
";blocked_proxies";: {
";anonymous";: true,
";public";: true,
";corporate";: true,
";transparent";: true,
";hosting";: true
},
";allowed_domains";: [
";www.google.com",
";www.brightcove.com";
],
";blocked_domains";: [
";www.ooyala.com";
],
";start_time";: 1572905011,
";end_time";: 1672905011,
";allowed_ips";: [
";192.168.1.1";
],
";blocked_ips";: [
";192.168.1.1";
],
";allowed_days";: [
";mon",
";tue";
],
";allowed_hours";: [
";5-6";
],
";allow_insecure";: true,
";disabled";: false,
";geo_global_rule";: ";allow_all",
";is_default";: true,
";name";: ";Optional playback right name";
}
フィールドの詳細は次のとおりです。
フィールド | タイプ | 説明 |
---|---|---|
allowed_days |
文字列 | リソースの取得が許可されている日の3文字の小文字の配列。1つ以上:mon, tue, wed, thu, fri, sat, sun |
allowed_domains , blocked_domains |
文字列 | ドメイン名の配列 |
allowed_hours |
整数 | リソースの取得が許可されている24時間制(0から47まで)からの時間の配列。当日は0〜23、翌日の終了日は24〜47。許可された時間のブロックが前日に始まり、翌日に終わる場合は、24以上の表記が必要です。
例:の値 3-4 このヘッダー内は、リソースがUTC午前3時から午前3時59分まで利用可能であることを意味します。 |
allow_insecure |
ブール値 | デフォルト:false
これをに設定する true JWTトークンをオプションにします。 |
allowed_ips , blocked_ips |
整数 | ipv4 / ipv6アドレスまたはCIDRブロックの配列。 |
blocked_proxies |
オブジェクト | 代理権に関連するプロパティ |
blocked_proxies.anonymous |
ブール値 | クライアントのIPアドレスは利用できません。DRM、TORポイント、一時プロキシ、およびその他のマスキングサービスに勝つために場所を変更するサービスが含まれます。 |
blocked_proxies.corporate |
ブール値 | 一般的に無害と見なされますが、場所が問題になる可能性があります。複数のユーザーが1つまたは複数の中央の場所を介してプロキシされ、単一のネットワークから見かけのIPアドレスを共有できるかどうかを識別します。 |
blocked_proxies.public |
ブール値 | パブリックインターネットアクセスを許可する場所からプロキシされた複数のユーザー。 |
blocked_proxies.transparent |
ブール値 | クライアントのIPアドレスはHTTPヘッダーを介して利用できますが、値は必ずしも信頼できるとは限りません(たとえば、なりすましの可能性があります)。 |
blocked_proxies.hosting |
ブール値 | IPアドレスはホスティング施設に属しており、エンドユーザーは通常ホスティング施設にいないため、プロキシになる可能性があります。 |
disabled |
ブール値 | デフォルト:false
これをに設定する true 再生権を無効にして、すべての人が再生できるようにします。 |
geo |
オブジェクト | 地理的権利に関連するプロパティ |
geo.allowed_countries 、
geo.blocked_countries
|
文字列 | ISO 3166-1alpha-2標準に準拠した2文字の国コードの配列。値のリストについては、を参照してください。正式に割り当てられたコード要素。 |
geo.allowed_dmas 、
geo.blocked_dmas |
整数 | ニールセン指定マーケットエリア(DMA)番号の配列。値のリストについては、を参照してください。 DMAコード資料。 |
geo.allowed_zip_codes 、
geo.blocked_zip_codes |
文字列 | 2文字の国とハイフンが前に付いた郵便番号の配列。例えば[";US-90045";] 。 2文字の国コードは大文字で、ISO 3166-1alpha-2標準に準拠している必要があります。正式に割り当てられたコード要素。 |
geo_global_rule |
文字列 | デフォルト: ""
値:
|
is_default |
ブール値 | デフォルト:false
これをに設定する true 現在のPlaybackRightをデフォルトにします。詳細については、序章セクション。 |
name |
文字列 | オプションの再生権名 |
start_time , end_time |
整数 | エポックタイム |
制限を動画に関連付ける
使用CMS API再生権IDを動画に関連付ける。前の手順で作成した再生権限IDを使用します。
CMS API
各再生権限制限オブジェクトは、1 つまたは複数のビデオで使用できます。
ベース URL
API のベース URL は次のとおりです。
https://cms.api.brightcove.com/v1
アカウントパス
いずれの場合も、特定の Video Cloud アカウントに対してリクエストが行われます。したがって、あなたは常にベースURLにアカウントIDが続く用語アカウントを追加します。
https://cms.api.brightcove.com/v1/accounts/{accountId}
認証
リクエストのアクセストークンが必要であり、Authorizationヘッダに存在する必要があります።
Authorization: Bearer {access_token}
アクセストークンは、一時的な OAuth2 アクセストークンで、Brightcove OAuth サービスから取得する必要があります。クライアントクレデンシャルを取得してアクセストークンを取得する方法の詳細については、「 Brightcove OAuth の概要」を参照してください。
権限
Playback Rights API へのリクエストは、次のアクセス許可を持つクライアント認証情報から行う必要があります。
-
video-cloud/video/read
-
video-cloud/video/update
制限の管理
NS CMS API多くのリクエストタイプをサポートします。ビデオを更新するには、以下を使用します。
ビデオを更新する:
アソシエイトplayback_rights_id
ビデオ付き。このIDは、前の手順で作成したPlayback RightsAPIに存在する必要があります。
PATCH /v1/accounts/{account_id}/videos/{video_id}
Content-Type: application/json
Body: {video object}
カールの例
動画にplayback_rights_idを追加します。
curl -X PATCH \\ https://cms.api.brightcove.com/v1/accounts/ あなたのaccount_id / videos / あなたのvideo_id \\ -H '認証:ベアラーあなたのaccess_token' \\ -H 'コンテンツタイプ:application / json' \\ -d '{"; playback_rights_id";: "; あなたのplayback_rights_id ";} '
特定のビデオを入手する:
GET /v1/accounts/{account_id}/videos/{video_ids}
APIの使用の詳細については、 CMS APIリファレンス。
プレーヤーを構成する
デフォルトでは、BrightcovePlayerはBrightcovePlayback API(PAPI)と通信します。再生制限を管理するための新しいシステムは、PlaybackAPIの前にあります。プレーヤーを構成するには、以下を参照してください。
ウェブプレーヤー
Brightcove Webプレーヤーを構成するには、以下を参照してください。 BrightcovePlayerでの再生制限資料。
ネイティブAndroidまたはiOSプレーヤー
AndroidまたはiOS用のネイティブプレーヤーを構成するには、を参照してください。ネイティブSDKでの再生制限資料。
あなた自身のプレーヤー
コンテンツがVideoCloudライブラリにあるが、独自のプレーヤーを使用している場合は、に示すようにPlaybackAPIを呼び出すことができます。概要:Playback API ドキュメント。ベースURLを次のように置き換えます。
https://edge-auth.api.brigthcove.com
ポリシーキーを使用する代わりに、認証にJSON Web Token(JWT)を使用します。
Authorization: Bearer {JWT}
Curlの例を次に示します。
curl -X GET \\ -H '認証:ベアラー{JWT}' \\ https://edge-auth.api.brightcove.com/playback/v1/accounts/ {your_account_id} / videos / {your_video_id}