我们通过以下方式配置了wowza服务器: https://www.wowza.com/forums/content.php?578-How-to-configure-security-using-Wowza-Streaming-Engine-Manager
然后我们通过这个php代码生成用于流式传输的身份验证URL:
//Connect with wowza output steam when SHA-256 security token applied:
date_default_timezone_set('Asia/Dhaka');//set the time zone if server time-zone is not correct
$wowza_serverip = "103.248.14.30"; // your ip/host
$wowzatoken = 'wowzatoken';
$wowzastart = 0;
$validity = 1800; // validity in seconds
$wowzaend = strtotime(date('d-m-Y H:i')) + $validity;
$secret = "7a97766ef659050"; // your secret
$stream_name = "live/myStream";// your stream myStream is default steaming
$hashstr = hash('sha256', $stream_name.'?'.$secret.'&'.$wowzatoken.'endtime='.$wowzaend.'&'.$wowzatoken.'starttime='.$wowzastart.'', true);
$usableHash = strtr(base64_encode($hashstr), '+/', '-_');
$url = "rtmp://".$wowza_serverip.":1935/live/myStream?".$wowzatoken."endtime=".$wowzaend."&".$wowzatoken."starttime=".$wowzastart."&".$wowzatoken."hash=".$usableHash."";
$iurl = $wowza_serverip.":1935/live/myStream/playlist.m3u8?".$wowzatoken."endtime=".$wowzaend."&".$wowzatoken."starttime=".$wowzastart."&".$wowzatoken."hash=".$usableHash."";
此代码可以生成安全的URL以从wowza获取输出流。我在 2015年9月 中使用了此代码,并且它完美运行(当时最新版本的wowza!v:4.3.0可能是)。
但遗憾的是现在生成的url无法从wowza获取流。并且wowza发送回复" SecurityToken Failure "。我们正在使用最新的wowza服务器(版本:4.6.0)。
有人可以帮忙吗?