#!/usr/bin/env perl use strict; use warnings; use Plack::Middleware; use webapp; use Plack::Builder; use Authen::Simple::ActiveDirectory; use Authen::Simple::HTTP; use Log::Log4perl; my $ad = Authen::Simple::ActiveDirectory->new( #host => 'ldaps//ad.abc.com', host => 'ldap//ad.abc.com', #basedn => 'dc=ad,dc=abc,dc=com', principal => 'ad.abc.com', timeout => '60', log => Log::Log4perl->get_logger('Authen::Simple::ActiveDirectory') ); my $ua = LWP::UserAgent->new(); $ua->proxy([ 'http' ], 'http://proxy.glb.abc.com:8080'); my $uri = URI->new('https://dev.preview.com/oauth2/default/v1/authorize'); $uri->query_form(client_id => 'xxxxxxxxxxxxxxxxxxx',response_type=>'code', scope=>'myid',redirect_uri=>'http://testchandan.com:5001',state=>'1234', nonce=>'UBGW'); #$ua->get($uri); builder { enable "Auth::Basic", authenticator => $ad; my ( $username, $password ) = @_; webapp->to_app; }; =begin comment builder { enable "Plack::Middleware::Auth::OIDC::ProtectedResource", data_handler => "webapp::DataHandler", error_uri => q{http://example.org/error/description}; enable "Plack::Middleware::JSONP"; enable "Plack::Middleware::ContentLength"; webapp->to_app; }; =end comment =cut