我已在服务器端的ASP.Net Core应用程序中成功验证了我的Azure Media Services帐户。 Azure返回一个简单Web令牌(SWT),其中还包含具有此令牌的到期时间戳的声明。
令牌如下所示:
的http%3A%2F%2fschemas.xmlsoap.org%2fws%2f2005%2f05%2fidentity%2fclaims%2fnameidentifier = healthtrainee&安培;瓮%3aSubscriptionId = bc73f3ce-的αAFE-40页-bd14-56bd5969b725&安培; HTTP%3A%2F%2fschemas .microsoft.com%2faccesscontrolservice%2f2010%2f07%2fclaims%2fidentityprovider = HTTPS%3A%2F%2fwamsprodglobal001acs.accesscontrol.windows.net%2F&安培;观众=瓮%3aWindowsAzureMediaServices&安培;的 ExpiresOn = 1493595982 &安培;发行人= HTTPS%3A%2F%2fwamsprodglobal001acs.accesscontrol.windows.net%2F&安培; HMACSHA256 = a1tBHoUzli1oEzzGwYGcqdE5EGJAv8xPXzz4XWB5EBo%3D
如何从此令牌中获取声明以处理令牌生命周期(必要时刷新)。 我确信有些东西可以让我免于解析这个问题。
答案 0 :(得分:1)
如何从此令牌中获取声明以处理令牌生命周期(必要时刷新)。
通常,如果我们使用REST API来获取访问令牌,我们可以检索access_token
和expires_in
(表示访问令牌有效的秒数)值响应主体,然后我们可以将值缓存到外部存储并监视expires_in
值并确保访问令牌未过期。
此外,如果我们使用Media Services SDK,我们也可以retrieve and cache the AccessToken string and the TokenExpiration values,然后监控并确保TokenExpiration未过期。
var accessToken = _context.Credentials.AccessToken;
var tokenExpiration = _context.Credentials.TokenExpiration;