Azure媒体服务AAD令牌C#
目前,我很难尝试将AAD与Azure媒体服务集成。 我必须从AAD获得一个承载令牌,然后将该令牌传递给Azure Media Player以播放加密视频,但我总是遇到以下错误:无法解密加密视频源。(0x2050004) 下面是我正在使用的两段代码。 C#代码: “Microsoft.WindowsAzure.MediaServices.Client”版本为4.1 Asp.net/JavaScript代码:Azure媒体服务AAD令牌C#,c#,azure,azure-active-directory,azure-media-services,C#,Azure,Azure Active Directory,Azure Media Services,目前,我很难尝试将AAD与Azure媒体服务集成。 我必须从AAD获得一个承载令牌,然后将该令牌传递给Azure Media Player以播放加密视频,但我总是遇到以下错误:无法解密加密视频源。(0x2050004) 下面是我正在使用的两段代码。 C#代码: “Microsoft.WindowsAzure.MediaServices.Client”版本为4.1 Asp.net/JavaScript代码: <script> var playerOptions = {
<script>
var playerOptions = {
"nativeControlsForTouch": false,
controls: true,
autoplay: true,
width: "100%",
height: "auto",
techOrder: ["azureHtml5JS", "flashSS", "html5FairPlayHLS", "silverlightSS", "html5"],
logo: {
enabled: true
},
poster: "https://xxxxxxxxxx.blob.core.windows.net/assetxxxxxxxx-xxxx-410d-xxxx-7xxxxxxxxxxxx/xxxxx11563.jpg?sv=2015-07-08&sr=c&si=xxxxxx-xxxx-xxxxxxx-xxxxxx&sig=xxxxxxxxxxxxxxxb%2F%2FTlyHLU6DTcf%2FdfWMaMSqw%3D&se=2078-06-12T16%3A08%3A03Z",
plugins: {
ga: {
'eventsToTrack': ['playerConfig', 'loaded', 'playTime', 'percentsPlayed', 'start', 'end', 'play', 'pause', 'error', 'buffering', 'fullscreen', 'seek', 'bitrate'],
'debug': false
}
}
};
var playerSrc = [{
src: "http://xxxxxxxxx.streaming.mediaservices.windows.net/xxxxxx-xxx-xxxx-xxx-xxxx/xxxxxx.ism/manifest" + "(format=m3u8-aapl)",
"type": "application/vnd.ms-sstr+xml",
"protectionInfo": [{
"type": "AES",
"authenticationToken": "Bearer @ViewBag.Token"
}],
"streamingFormats":["SMOOTH","DASH"]
}];
</script>
变量播放选项={
“nativeControlsForTouch”:错误,
控制:对,
自动播放:对,
宽度:“100%”,
高度:“自动”,
techOrder:[“azureHtml5JS”、“flashSS”、“html5FairPlayHLS”、“silverlightSS”、“html5”],
标志:{
已启用:true
},
海报:“https://xxxxxxxxxx.blob.core.windows.net/assetxxxxxxxx-xxxx-410d-xxxx-7xxxxxxxxxxxx/xxxxx11563.jpg?sv=2015-07-08&sr=c&si=xxxxxx-xxxxxx-xxxxxx-xxxxxx&sig=XXXXXXXXXXXXX B%2F%2FTlyHLU6DTcf%2FDFWAMSQW%3D&se=2078-06-12T16%3A08%3A03Z“,
插件:{
ga:{
“eventsToTrack':['playerConfig'、'loaded'、'playTime'、'percentsPlayed'、'start'、'end'、'play'、'pause'、'error'、'buffering'、'fullscreen'、'seek'、'bitrate'],
“调试”:false
}
}
};
变量playerSrc=[{
src:“http://xxxxxxxxx.streaming.mediaservices.windows.net/xxxxxx-xxx-xxxx-xxx-xxxx/xxxxxx.ism/manifest“+”(格式=m3u8 aapl)”,
“类型”:“application/vnd.ms sstr+xml”,
“保护信息”:[{
“类型”:“AES”,
“authenticationToken”:“Bearer@ViewBag.Token”
}],
“streamingFormats”:[“平滑”、“破折号”]
}];
Azure Player的链接是:最后,我找到了解决这个问题的方法。按照我所做的步骤进行操作:
string testToken=TokenRestrictionTemplateSerializer.GenerateTestToken(tokenTemplate,tokenTemplate.PrimaryVerificationKey,新Guid(“在此处粘贴您在步骤10中获得的ID。删除“nb:kid:UUID:”部分!”)、DateTime.Now.AddHours(10)); WriteLine(“授权令牌是:\nBearer{0}”,testToken)
请把你的代码放在你的问题里,不要作为链接。@JeroenHeier,完成!对于AMS Explorer v3,这些步骤有所更改,但功能仍然保留。现在有了“安全”选项,但右键单击->发布->清除密钥流->创建定位器有效地替代了步骤4和5。
<script>
var playerOptions = {
"nativeControlsForTouch": false,
controls: true,
autoplay: true,
width: "100%",
height: "auto",
techOrder: ["azureHtml5JS", "flashSS", "html5FairPlayHLS", "silverlightSS", "html5"],
logo: {
enabled: true
},
poster: "https://xxxxxxxxxx.blob.core.windows.net/assetxxxxxxxx-xxxx-410d-xxxx-7xxxxxxxxxxxx/xxxxx11563.jpg?sv=2015-07-08&sr=c&si=xxxxxx-xxxx-xxxxxxx-xxxxxx&sig=xxxxxxxxxxxxxxxb%2F%2FTlyHLU6DTcf%2FdfWMaMSqw%3D&se=2078-06-12T16%3A08%3A03Z",
plugins: {
ga: {
'eventsToTrack': ['playerConfig', 'loaded', 'playTime', 'percentsPlayed', 'start', 'end', 'play', 'pause', 'error', 'buffering', 'fullscreen', 'seek', 'bitrate'],
'debug': false
}
}
};
var playerSrc = [{
src: "http://xxxxxxxxx.streaming.mediaservices.windows.net/xxxxxx-xxx-xxxx-xxx-xxxx/xxxxxx.ism/manifest" + "(format=m3u8-aapl)",
"type": "application/vnd.ms-sstr+xml",
"protectionInfo": [{
"type": "AES",
"authenticationToken": "Bearer @ViewBag.Token"
}],
"streamingFormats":["SMOOTH","DASH"]
}];
</script>