应用平台 APPSTAGE-快捷构建屏幕:Token校验
Token校验
客户端在使用Token校验的流程如下。
已获取大屏分享链接和Token。
例如,分享链接https://console.ulanqab.huawei.com/sve/preview.html?region=cn-north-7#/screen/share/18cd21df7bc-WPgj_GqRc。其中“region”的值为“cn-north-7”,“pageId”的值为“18cd21df7bc-WPgj_GqRc”。
- 使用代码开发工具将大屏分享链接中的pageId和region拼接成如下格式的字符串。
pageId|region;
- 使用HmacSHA256算法对拼接的字符串进行签名,并将签名后的字符串使用Base64进行转换。签名时需要使用对应的Token。
HmacSHA256签名和Base64转换的示例如下:
import java.security.*; import javax.crypto.*; import javax.crypto.spec.SecretKeySpec; import org.apache.commons.codec.binary.Base64; import java.net.URLEncoder; public class ShareWithTokenTest { public static void main(String[] args) throws Exception { System.out.println(getShareUrlWithToken("********722467a9477b5b*******", "cn-7", "*******r1tyy1C7Jenni3p*********")); } public static String getShareUrlWithToken(String pageId, String region, String token){ String data = pageId + "|" + region; String signature = HMA CS HA256(data.getBytes(), token.getBytes()); String url = "https://console.huaweicloud.com/sve/share/page.html?id=" + pageId + "®ion=" + region + "&sve_signature=" + signature; return url; } //采用HmacSHA256进行签名并进行Base64转换 public static String HMACSHA256(byte[] data, byte[] key) { try { SecretKeySpec signingKey = new SecretKeySpec(key, "HmacSHA256"); Mac mac = Mac.getInstance("HmacSHA256"); mac.init(signingKey); return URLEncoder.encode(Base64.encodeBase64String(mac.doFinal(data))); } catch (NoSuchAlgorithmException e) { e.printStackTrace(); } catch (InvalidKeyException e) { e.printStackTrace(); } return null; } }
- 将转换后的字符串赋值给sveSignature,sveSignature参数拼接到大屏分享链接中获取新的访问链接。
例如,新的访问链接https://console.ulanqab.huawei.com/sve/preview.html?sveSignature=1OP99N6yxCDmEiH4aNMU1GAwtKspSg4fJ/zh0679k=®ion=cn-north-7#/screen/share/18cd21df7bc-WPgj_GqRc
- 编译构建服务_多语言构建平台_高效云端开发
- Astro轻应用_Astro大屏应用_分钟级构建业务大屏
- 应用身份管理服务企业API使用_应用身份管理_OneAccess-华为云
- 编译构建服务是什么_如何使用鲲鹏环境构建
- 应用管理平台_web应用管理_微服务应用管理-华为云
- GaussDB数据库的构建_GaussDB是什么_高斯数据库构建
- 如何快速体验应用管理与运维平台_快速体验_应用管理与运维平台_功能
- 应用管理与运维平台实战_应用托管_应用运维-华为云
- 如何使用应用管理与运维平台_应用管理_应用运维_微服务应用治理
- 编译构建有什么作用_ 编译构建 CodeArts Build_软件开发编译构建-华为云