簡介
的政策金鑰用於從視頻雲庫中檢索視頻和播放列表內容,方法是使用播放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}
要獲取訪問令牌,請按照下列步驟操作:
-
獲取您的客戶憑證(
client_id
和client_secret
)通過Video Cloud Studio(推薦的)。對於可與策略密鑰創建請求一起使用的訪問令牌,要求您的客戶端憑據在Studio中具有以下權限:玩家讀和讀/寫
您也可以直接通過Brightcove OAuth API。
- 獲得客戶憑證後,您可以從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支持。在請求中包含要撤銷的策略的密鑰字符串。