If you don't mind altering you cgi scripts (assuming they are scripts and not
compiled programs) you can do this.

ns_register_filter postauth GET /cgi-bin/* remote_user_set

proc remote_user_set {conn args why} {
        # put code to pull logged in ACS user here
        # set acs_user_name [somehow_get_acs_user_name]

        # this puts HTTP_AUTH_USER in your cgi's environment
        ns_set put [ns_conn headers] "AUTH_USER" $acs_user_name
        return filter_ok
}

which will put a variable called "HTTP_AUTH_USER" into the cgi environment.
Then issue the following command to replace AUTH_USER with HTTP_AUTH_USER in
your wiki script.

>From your wiki directory type
perl -p -i -e 's/AUTH_USER/HTTP_AUTH_USER/g' $(find . -type f)

On Friday 03 May 2002 11:19 am, Carl Coryell-Martin wrote:
> I now working with a small non-profit building media tools for the
> environmental movement on the ACS platform.  We just installed a
> wiki-wiki-web that uses http "basic authentication."
>
> Since we authenticate users with filters in the ACS, I would like a
> tiny module that gives me a tcl commend like ns_set_authuser that
> would set the REMOTE_USER environment variable that gets passed to the
> cgi.
>
> This would allow us to identify users in the wiki and not force users
> to log in twice.
>
> I have spent some time poking around in here myself, but I would just
> as soon not have to brush off my C and feet wet in AOLserver if I can
> help it (other fish to fry).
>
> Please email me if you would be willing to consult with us about this.
>
> Thank you,
>
> Carl Coryell-Martin

Reply via email to