概述:政策 API

在本主題中,您將了解原則 API 的用途,以及如何使用它。原則 API 用於建立或取得原則金鑰。
 

簡介

政策金鑰用於從視頻雲庫中檢索視頻和播放列表內容,方法是使用播放API

另請參閱API參考

需要一個嗎?

在特殊情況下,您需要生成自己的策略密鑰:

  • 創建策略密鑰時,它們會自動為Brightcove Players生成。如果您希望使用播放器進行地理位置過濾來獲取密鑰,或者僅在不創建播放器的情況下訪問Playback API,則只需要直接使用此API生成策略密鑰-通常這適用於使用設備SDK。看到策略鍵有關如何獲取任何Brightcove Player的策略密鑰的說明。
  • 執行視頻搜索請求:
    • 您必須使用啟用搜索的策略密鑰
    • 默認情況下,未為新Brightcove播放器生成的策略密鑰處於搜索狀態。您必須使用政策API
    • 一般而言,啟用搜尋功能的原則金鑰應該只儲存在伺服器上,而不能儲存在瀏覽器播放器或行動應用程式中,因為這些金鑰可用來列出所有可播放的影片。對於某些帳戶,如果您不介意可以發現所有可播放的視頻,則可能不適用。
    • 搜索請求將僅返回可播放的視頻。有關 API 請求/響應的詳細信息,請參閱獲取視頻的部分播放 API 參考 .

常問問題

以下是一些我們通常會收到的有關Policy API的問題。

可以為多個帳戶創建策略密鑰,還是僅創建一個?
使用策略密鑰可以訪問一個帳戶的視頻和播放列表。如果您有多個帳戶,則需要為每個帳戶創建策略密鑰。
策略密鑰會過期嗎?
不,策略密鑰永遠是好的。如果您需要撤銷策略密鑰,則必須聯繫Brightcove支持 -在請求中包含您希望撤銷的帳戶ID和策略密鑰。
策略密鑰是否對帳戶中的所有用戶有效?
是的,擁有策略密鑰的任何人都可以使用它。
可以更新策略密鑰嗎?
否,無法更新策略密鑰。你可以獲取策略密鑰從您的Video Cloud帳戶中的現有播放器播放,或者您可以使用Policy API創建新的策略密鑰。

基本網址

Policy API的基本URL為:

https://policy.api.brightcove.com/v1

帳號路徑

在所有情況下,我們都會針對特定的視訊雲端帳戶提出要求。因此,您將始終添加/accounts/ 然後是您的帳戶ID和基本URL:

https://policy.api.brightcove.com/v1/accounts/{account_id}

驗證

通過傳遞給服務器的訪問令牌對請求進行身份驗證Authorization 標頭:

Authorization: Bearer {access_token}

要獲取訪問令牌,請按照下列步驟操作:

  1. 獲取您的客戶憑證(client_id client_secret )通過Video Cloud Studio(推薦的)。

    對於可與策略密鑰創建請求一起使用的訪問令牌,要求您的客戶端憑據在Studio中具有以下權限:玩家讀和讀/寫

    驗證權限
    驗證權限

    您也可以直接通過Brightcove OAuth API

  2. 獲得客戶憑證後,您可以從OAuth API獲取臨時訪問令牌

必要的標頭

除了Authorization在上一節中討論的標頭中,請求還必須具有一個Content-Type標頭:

Content-Type: application/json

創建策略密鑰

要創建新的策略密鑰,請向以下位置發出POST請求:

https://policy.api.brightcove.com/v1/accounts/{account_id}/policy_keys

要求主體

在請求主體中,包括策略的JSON:

{
      "key-data": {
        "account-id": "{account_id}"
      }
    }

這是最基本的策略,它限制了對帳戶的訪問,您必須在創建的任何策略中都包括該策略。此處的帳戶ID必須與請求URL中的帳戶ID匹配,否則將返回錯誤。

域限制

除了限制對帳戶的訪問之外,您還可以通過添加以下內容來限制對特定域的訪問:allowed-domains 鍵:

{
      "key-data": {
        "account-id": "123456789001",
        "allowed-domains": [
          "https://www.abc.com",
          "https://www.abc.com",
          "https://www.xyz.com",
          "https://www.xyz.com"
        ]
      }
    }

地理限制

可以使用Policy API代替播放器或除了播放器之外,還可以為播放器實施地理位置過濾單個視頻。

範例

以下是一個白名單策略集示例,該策略集僅允許從美國,美國領土和軍事基地進行播放:

{"account-id": "8523232323",
      "geo": {
        "countries": ["us", "usmil", "pr", "gu", "vi", "as", "mp"],
        "exclude_countries": false
      }
    }

要將這些國家/地區列入黑名單,請設置exclude_countries 真實。

需要 SAI

在使用服務器端廣告插入(SSAI)時,您可能需要一種在API請求中強制執行正確的廣告配置的方法。您可以通過配置策略密鑰來要求ad_config_id 作為URL參數附加到所有Playback API請求中。

範例

這是一個例子:

{
      "key-data": {
        "account-id": "1752604059001",
        "require-ad-config": true
      }
    }

有關使用ad_config_id 與您的Playback API請求一起,請參閱播放API概述:使用SSAI的視頻請求文件。

搜尋影片

執行視頻搜索請求時,必須使用已啟用搜索的策略密鑰。要創建啟用搜索功能的策略密鑰,調用的請求正文必須包括以下內容:

{
      "key-data": {
        "account-id": "57838016001",
        "apis": ["search"]
      }
    }

API 回應

對策略創建請求的響應將是包含加密的JSON key-string 可用於驗證對Playback API的請求以及與密鑰關聯的策略的身份:

{
      "key-data": {
        "account-id": "57838016001"
      },
      "key-string": "BCpkADawqM0NK0Rq8n6sEQyWykemrqeSmIQqqVt3XBrdpl8TYlvqN3hwKphBJRnkPgx6WAbozCW_VgTOBCNf1AQRh8KnmXSXfveQalRc5-pyNlSod5XzP99If2U"
    }

政策要求

檢索與key-string ,發出GET請求以:

/accounts/v1/{account_id}/policy_keys/{key_string}

響應將是密鑰字符串和策略的JSON表示形式:

{
      "key-data": {
        "account-id": "57838016001"
      },
      "key-string": "BCpkADawqM0NK0Rq8n6sEQyWykemrqeSmIQqqVt3XBrdpl8TYlvqN3hwKphBJRnkPgx6WAbozCW_VgTOBCNf1AQRh8KnmXSXfveQalRc5-pyNlSod5XzP99If2U"
    }

撤銷政策

如果您需要撤銷現有政策,請向Brightcove支持。在請求中包含要撤銷的策略的密鑰字符串。