Blair,
Here's the authenticate function in my cmiad.cfc. Am i missing
something? Does setting stResult = StructNew() not create an empty
struct?
<cffunction name="authenticate" access="public" output="true"
returntype="struct" hint="Attempts to process a user. Runs every time
the login form is loaded.">
<cfset var stResult = structnew() />
<cfset var qResult = "" />
<cfimport taglib="/farcry/core/tags/formtools/" prefix="ft" />
<!--- Return struct --->
<ft:processform>
<ft:processformObjects typename="#getLoginForm()#">
<cfset stResult.userid = "" />
<cfset stResult.authenticated = false />
<cfset stResult.message = "" />
<!--- Find the user --->
<cftry>
<cfldap
server="#application.config.ldap.host#" action="query"
name="qResult" start="#application.config.ldap.userstart#"
scope="base" attributes="*" username="#replace
(application.config.ldap.userdn,'{userid}',stProperties.username)#"
password="#stProperties.password#" />
<cfset stResult.authenticated = true />
<cfset stResult.userid =
stProperties.username />
<cfcatch>
<!--- CROTH: 1/29/09 disable the return
variable so that this
will also look in the FarcryUD
<cfset stResult.authenticated =
false />
<cfset stResult.userid =
stProperties.username />
<cfset stResult.message = "The
username or password is
incorrect" />
--->
<cfset stResult = StructNew()>
</cfcatch>
</cftry>
</ft:processformObjects>
</ft:processform>
<cfreturn stResult />
</cffunction>
On Jan 29, 2:24 pm, Blair McKenzie <[email protected]> wrote:
> Check that the ldap authenticate function is returning an empty struct when
> there is no match. Every time the login page is loaded, FarCry loops through
> the user directories trying to authenticate. As soon as a non-empty struct
> is returned (empty == nothing to see here) it stops, and there was either an
> error or the user is logged in.
>
>
>
> On Fri, Jan 30, 2009 at 6:58 AM, Chris Roth <[email protected]> wrote:
>
> > Blair,
>
> > Thanks for the pointers. I am close but dont seem to quite have it
> > right, perhaps a litte more guidance.
>
> > Here's what I have done so far.
>
> > I have a plugin cmiAD which is basically a modified version of
> > farcryldap. Its working just fine.
>
> > In webtop - admin - edit config - general config - login props -
> > default UD I have set to my cmiAD
>
> > At thie point I can login with either a Farcry or cmiAD user. The
> > login form has the select UD option..... following your guidance..
>
> > I have made the following changes to my cmiAD plugin files.
>
> > 1. copied the folder\file farLogin\displayLogin.cfm from core\webskins
> > to \plugins\cmiAD\weskins
> > 2. commented out <sec:SelectUDLogin> in \plugins\cmiAD\weskins
> > \farLogin\displayLogin.cfm
>
> > 3. cmiAD.cfc - modified getLoginForm to return farLogin
> > 4. cmiAD.cfc - commented out the setting of stResult variables between
> > the <cfcatch> tags
>
> > Refresh app and I get 70% there.
>
> > 1. My login page no longer has user directory select
> > 2. I can login with my AD account
> > 3. FAIL: I can not login with a farcry user account
>
> > I suppose somwhere there needs to be instructions to pass the supplied
> > username/password to all "configured" User Directories, but I am not
> > sure where to put that. Help?
>
> > On Jan 28, 3:24 pm, Blair McKenzie <[email protected]> wrote:
> > > 1. Modify the login skin for the default user directory to remove the
> > > directory select
> > > 2. Modify the default user directory authentication function so that a
> > > user-doesn't-exist failure does not return an error struct
> > > 3. Make sure that the authentication function for both user
> > directories
> > > process the form (e.g. they both use the farLogin form)
>
> > > I think that's all you need.
>
> > > Blair
>
> > > On Thu, Jan 29, 2009 at 9:00 AM, Chris Roth <[email protected]>
> > wrote:
>
> > > > I have modified the farcryldap plugin to work with our Active
> > > > Directory configuration, and from what I can tell thus far, its
> > > > working just fine (logins, groups, etc.)
>
> > > > However, I really dislike the login page that now requires the user to
> > > > "select" the user directory.
>
> > > > We have AD users (internal employees) and FCUD users (external non- ad
> > > > people) that will need to be logging in.
>
> > > > Has anyone, or can someone provide some guidance on making the login
> > > > page work like 4.x...
>
> > > > If a login is not found in say the FCUD, check the ADUD.. etc before
> > > > denying/granting access?- Hide quoted text -
>
> > > - Show quoted text -- Hide quoted text -
>
> - Show quoted text -
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"farcry-dev" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/farcry-dev?hl=en
-~----------~----~----~----~------~----~------~--~---