[wowza技术]在客户端配置 SecureToken
SecureToken 安全特性要求修改你的客户端 ActionScript 播放器代码以使其能够正确地应对 SecureToken 挑战。接下来介绍如何在自定义 Flash 客户端代码中实现这个。
为解释如何将 SecureToken 集成到你的客户端 ActionScript 代码中,假定我们已经配置一个名为 live 的服务器端应用,该应用使用了 ModuleSecureToken 模块来保护内容的发布和回放,secureTokenSharedSecret 属性设置为 mytestpassword。
建立一个到服务器端的 Flash 客户端代码如下:
- import com.meychi.ascryptAS3.TEA;
- var nc:NetConnection = new NetConnection();
- function ncOnStatus(infoObject:NetStatusEvent)
- {
- if (infoObject.info.code == "NetConnection.Connect.Success")
- {
- if (infoObject.info.secureToken != null)
- nc.call("secureTokenResponse", null, TEA.decrypt(infoObject.info.secureToken, "mytestpassword"));
- }
- }
- nc.addEventListener(NetStatusEvent.NET_STATUS, ncOnStatus);
- nc.connect("rtmp://localhost/vod");
例子中的第一行导入了用于解密 SecureToken 令牌的 TEA 库。ActionScript 2.0 和 3.0 版本的这一代吗包含在这个下载链接中:ActionScriptTEA.zip。
如果你打算将这些代码集成到你的播放器中,你需要拷贝这些类到你的 Flash 客户端代码中去。
接下来,我们定义并创建一个将被用于和 Wowza Media Server 服务器端通信的 NetConnection 对象。接下来是在 NetConnection 对象周期中将被调用的 NetConnection onStatus 处理器。我们添加 onStatus 处理器作为 NetConnection 的一个监听器,最后添加一个 NetConnection.connect(url) 以连接到 Wowza Media Server。
当 NetConnection 建立了和 Wowza Media Server 的连接时,onStatus 处理器将被以 NetConnection.Connection.Success 值的 infoObject.info.code 调用。如果服务器端使用 SecureToken 保护,那么 infoObject.info 对象也将会在 secureToken 属性中包含一个 SecureToken 质疑。要应对这一质疑,Flash 客户端代码使用设置给解密令牌的第一个参数调用远程方法 secureTokenResponse。你可以使用以下调用查看解密的令牌:
- TEA.decrypt(infoObject.info.secureToken, "mytestpassword")
热门文章推荐
- [海康监控]海康摄像头如何改密码(海康监控改密码图文教程)
- [海康监控]如何正确的修改海康威视摄像机IP地址
- [海康监控]海康NVR硬盘录像机密码恢复的解决办法
- [海康监控]海康威视视频流回放以及rtsp取流的格式说明
- [大华监控]大华硬盘录像机密码重置教程
- [海康NVR]关于NVR与ONVIF协议的问题
- [大华NVR]大华硬盘录像机远程监控设置方法
- [监控]海康威视视频流回放以及rtsp取流