Authenticate both FMLE and Flash application

I’m trying to config my wowza server to require authentication for both FMLE and Flash applicaiton.

So I built 2 modules, the first extended AuthenticateUsernamePasswordProviderBase thus I can do database level control.

The second module extended ModuleBase , which checks referrer in onConnect to see if my Flash application is embedded at some particular web pages (thus denied all other referrer).

However, if I configured ModuleRTMPAuthenticate+my modules, then FMLE works fine but Web-Flash failed to create stream event though I did “client.acceptConnection()” or “this.invokePrevious()” at both onConnect and publish.

On the contrast, if I use moduleOnConnectAuthenticate(or moduleOnConnectAuthenticate2) instead of ModuleRTMPAuthenticate, and add username/password to my Flash application then it worked fine, but FMLE won’t work.

It seems that I have to use 2 different Wowza apps, one for FMLE and another for Flash application, is it?

Is there any way to auth both FMLE and Flash application in a single Wowza app?

Thanks for any information.

Hi,

If you use ModuleOnConnectAuthenticate2, then it should work with FMLE. This module accepts the username and password as query parameters which you can add to your fmle server url.

If you are using an old version of fmle, then query params may not work, in which case, you would add them as extra folders in the path.

rtmp://<wowza-ip>/live/_definst_/<username>/<password>

In Wowza, any folders after the appInstance portion of the rtmp url will automatically be converted to query params. Note: This is only for where the server address and stream name are entered separately.

Roger.

I have the same problem, I will want ModuleRTMPAuthenticate check only the connection with FMLE, while all the others I have my custom class that use querystring.

Is it possible in the same application use FMLE and NO FMLE authorization?

Thanks Roger, It works fine.

Carlo

Hi It could be possible if your custom class extends ModuleRTMPAuthenticate and overrides the onConnect, publish and releaseStream methods.

In these methods, you would test if the client is FMLE and if so call the ModuleRTMPAuthenticate method using super.

You should also make sure you call the ModuleRTMPAuthenticate method for any other methods that your custom module overrides such as onAppStart & onAppStop &onDisconnect.

Roger.

Thank you Roger.

By changing FMLE’s query string and connects to ModuleOnConnectAuthenticate2 , there won’t be any interactive pop-up dialog to input username/password …

Is there any way to bypass ModuleRTMPAuthenticate in other module (such as set connection session variables) so that the server treated the connected client as authenticated?

Hello, I’m having the exact same issue. Is it possible that you post your custom class which allows both authentication methods? I would appreciate it greatly.

Lukasz