Azure Media Service账户密钥获取及AD集成步骤异常求助
如何获取Azure Media Service账户密钥并解决CloudMediaContext认证问题
我来帮你理清这个问题——你现在混淆了Azure Media Services的两种不同认证方式,这就是为啥你用AAD教程里的密钥不好使的原因。
首先,你的代码client = new CloudMediaContext(new MediaServicesCredentials(accountName, accountKey));用的是传统账户密钥认证,和你看的AAD集成教程里的认证逻辑完全是两回事。你需要去Media Services账户的专属位置获取正确的密钥:
- 登录Azure门户,找到你已经创建好的Media Services账户
- 在账户左侧导航栏的「设置」分组里,找到并点击「访问密钥」选项
- 在这里你能看到主密钥和辅助密钥,随便复制其中一个,就是代码里需要的
accountKey
为啥AAD教程里的密钥不能用?
你参考的《Integrating applications with Azure Active Directory》教程,是教你用AAD服务主体来做认证的——这种方式用的是服务主体自身的密钥(或者证书),和Media Services账户的原生访问密钥不是同一个东西。你的代码里的MediaServicesCredentials类只认Media Services账户的专属密钥,所以用AAD的密钥肯定会失败。
如果之后你想切换到更安全的AAD认证方式,可以改成这样初始化CloudMediaContext:
// 基于AAD服务主体的认证示例 var tokenCredentials = new TokenCredentials(yourAadAccessToken); var mediaContext = new CloudMediaContext(new Uri(yourMediaServiceRestEndpoint), tokenCredentials);
不过如果就想沿用当前的代码逻辑,直接去Media Services账户的「访问密钥」里拿密钥就可以正常使用了。
内容的提问来源于stack exchange,提问作者dario
相关产品推荐
相关产品推荐

