在Flash客户端的NetConnection.connect方法中传递用户名和密码进行RTMP连接的认证
转载请注明:文章来自www.wowza.cn
注意: 要访问最新的技术资料,请访问http://www.ttstream.com/wowza/
这是一个基于文件的用户名/密码认证方式,它适用于当你用Flash客户端连接Wowza Streaming Engine™时,对连接进行认证。 www.wowza.cn 它在NetConnection.connect方法中,传入两个参数,来对连接进行认证。

注意:
  • 这个模块和Wowza Streaming Engine的Incoming Security > RTMP Publishing > Require Password Authentication 功能并不兼容。如果你要用这个模块,这个RTMP Publishing 的认证设置必须为Open状态。

  • 当这个模块被启用后,所有的RTMP连接,包括推流和播放,都必须在NetConnection.connect方法中传入用户名和密码,来进行认证。

  • 这个模块不支持Flash Media Live Encoder 或 Wirecast 的用户认证。它仅仅适用于在Flash客户端中使用NetConnection.connect(rtmpURL, username, password)方法时传入用户名和密码的认证场景。
Wowza Module 集合中有一个已经编译好的这个模块的版本。

配置



要启用这个模块,你需要在你的应用中添加下面的模块,你可以参考自定义模块的配置来了解更多细节。

Name
Description
完整的Java类包名
moduleOnConnectAuthenticate 对Flash端发起的RTMP连接请求进行用户认证 com.wowza.wms.plugin.collection.module.ModuleOnConnectAuthenticate


属性参数



在启用这个模块后,你可以在你的应用中添加下面的属性参数来对这个模块做一些基本的参数设置。请参考配置参数以了解更多细节。

配置路径
参数名
类型
参数值
备注
Root/Application rtmpAuthenticateFile String ${com.wowza.wms.context.VHostConfigHome}/conf/connect.password 用来进行认证的用户密码的文件所在路径和文件名(默认值: ${com.wowza.wms.context.VHostConfigHome}/conf/connect.password).
Root/Application usernamePasswordProviderClass String com.example.MyCustomClass 对密码进行解析的完整的Java类名(默认: 没有设置,空着的).
Root/Application AllowEncoder String FM, Wirecast 用逗号间隔开的一个或多个编码器的Flash标识,它们被允许不用经过这个模块的认证而与Wowza进行RTMP连接(默认: 没有设置,空着的).


用户密码文件



这个模块使用的用户密码文件为connect.passwordwww.wowza.cn,默认情况下,这个文件应该在 [install-dir]/conf目录下。 这个文件名和目录可以在应用的配置文件中定义。


  1. [install-dir]/conf目录下创建一个叫做connect.password的文本文件。
  2. 每一行对应一对用户和密码,用户名和密码用空格隔开。

[install-dir]/conf/connect.password:
Code:
user1 pass1
user2 pass2

Flash 客户端的配置



NetConnection.connect方法中传递用户名和密码的示例代码如下:
Code:
var username:String = "user1";
var password = "pass1";
netconnection.connect("rtmp://[wowza-address]/yourApp",username,password);