用于访问VOD的Azure媒体服务承载令牌

时间:2018-06-08 04:12:24

标签: azure azure-media-services azure-authentication

我正在使用Azure媒体服务构建VOD服务。

我已将授权政策添加为"令牌"并已输入发行人,范围和主要验证密钥。

我无法获得正确的承载令牌来访问资产中的内容。

我尝试过以下方法:

  1. 使用Azure PHP SDK : 我创建了一个令牌模板并在SDK中使用了这个函数:TokenRestrictionTemplateSerializer :: generateTestToken

  2. https://media.ams.ext.azure.com/api/Utils/IssueToken :创建了一个表单,将type,issuer,scope,primaryVerificationKey,secondaryVerificationKey发送到此网址并获取令牌。

  3. 使用这两种方法获得的令牌都不起作用。当我尝试播放视频时,我得到了#34;授权失败"消息。

    请帮助我如何获得正确的令牌?

    感谢。

1 个答案:

答案 0 :(得分:0)

让我们分步骤: (假设您使用的是AMS v2 API。如果不是这样,请告诉我。)

  1. 首先,请不要在设置内容保护(ContentKeyAuthorizationPolicyRestriction)时添加任何RequiredClaims,我们可以在基本工作完成后添加。在代码中使用以下值来配置内容保护 对于发行人,请使用:https://sts.windows.net/51641c40-ad65-4736-88fc-2f0e10072d85/ 对于观众,请使用:29635cdc-ca9a-48b7-b242-05a31810e8c9 使用对称验证密钥:C4D3E9FB-2533-4061-9892-2B8F58A1AECB (别担心这些价值现在是什么。我们稍后会更换它们。)
  2. 目前,请勿使用自己的自定义安全令牌服务(STS)。而是使用我在此处托管的那个:https://openidconnectweb.azurewebsites.net/DRMTool/Jwt(选择具有对称密钥的自定义STS)。
  3. 在播放器中使用此JWT令牌进行播放测试。或者你也可以在https://openidconnectweb.azurewebsites.net/AMTestPlayer使用我的测试播放器,它允许你在player_settings下粘贴你的JWT。
  4. 在我们完成这项工作后,我们继续使用您的STS(安全令牌服务)。对发行人,受众和对称密钥使用与上述相同的值。

    在我们使您的STS工作之后,我们可以继续进行您想要的案例,例如

    • 使用非对称密钥(x509证书),
    • 添加所需的声明,
    • 使用您自己的发行人,观众,

    所以现在让我们一步一步走,准确地说明每一步。希望这种方法可以帮助您隔离/排除多个移动部件的故障:AMS配置,AMS许可授权,STS,播放器/ JWT,索赔。

    祝你好运, 威廉