Apache-Sling
view release on metacpan or search on metacpan
lib/Apache/Sling/Authn.pm view on Meta::CPAN
$authn->{'Password'} = $new_password;
if ( defined $type ) {
$authn->{'Type'} = $type;
}
$check_basic = ( defined $check_basic ? $check_basic : 0 );
if ( $authn->{'Type'} eq 'basic' ) {
if ($check_basic) {
my $success = $authn->basic_login();
if ( !$success ) {
# Reset credentials:
$authn->{'Username'} = $old_username;
$authn->{'Password'} = $old_password;
$authn->{'Type'} = $old_type;
croak
"Basic Auth log in for user \"$new_username\" at URL \""
. $authn->{'BaseURL'}
. "\" was unsuccessful\n";
}
}
else {
$authn->{'Message'} = 'Fast User Switch completed!';
}
}
else {
# Reset credentials:
$authn->{'Username'} = $old_username;
$authn->{'Password'} = $old_password;
$authn->{'Type'} = $old_type;
croak "Unsupported auth type: \"$type\"\n";
}
}
else {
$authn->{'Message'} = 'User already active, no need to switch!';
}
if ( $authn->{'Verbose'} >= 1 ) {
lib/Apache/Sling/User.pm view on Meta::CPAN
=head2 del
Delete a user.
=head2 run
Run user related actions.
=head2 update
Update a user's credentials.
=head2 view
View details for a user.
=head1 USAGE
use Apache::Sling::User;
=head1 DESCRIPTION
t/External/Apache-Sling-Authn.t view on Meta::CPAN
ok( $user->add( $test_user1, $test_pass, \@test_properties ),
"Authn Test: User \"$test_user1\" added successfully." );
ok( $user->check_exists( $test_user1 ),
"Authn Test: User \"$test_user1\" exists." );
ok( $user->add( $test_user2, $test_pass, \@test_properties ),
"Authn Test: User \"$test_user2\" added successfully." );
ok( $user->check_exists( $test_user2 ),
"Authn Test: User \"$test_user2\" exists." );
throws_ok{ $authn->switch_user( $test_user1, $test_pass, "badauthtypewillnotwork", 1 ) } qr/Unsupported auth type: "badauthtypewillnotwork"/, 'Check switch_user croaks with unsupported auth type';
throws_ok{ $authn->switch_user( "baduser", "badpassword", "basic", 1 ) } qr/Basic Auth log in for user "baduser" at URL "$sling_host" was unsuccessful/, 'Check switch_user croaks with bad credentials';
throws_ok{ $authn->switch_user( $super_user, "badpassword", "basic", 1 ) } qr/Basic Auth log in for user "$super_user" at URL "$sling_host" was unsuccessful/, 'Check switch_user croaks with bad password';
ok( $authn->switch_user( $test_user1, $test_pass, "basic", 1 ),
"Authn Test: Successfully switched to user: \"$test_user1\" with basic auth" );
ok( $authn->switch_user( $test_user1, $test_pass, "basic", 1 ),
"Authn Test: Successfully stayed as user: \"$test_user1\"" );
ok( $authn->switch_user( $test_user2, $test_pass, "basic", 1 ),
"Authn Test: Successfully switched to user: \"$test_user2\" with basic auth" );
$authn->{'Verbose'} = 3;
ok( $authn->switch_user( $super_user, $super_pass, "basic", 1 ),
"Authn Test: Successfully switched back to user: \"$super_user\" with basic auth" );
( run in 0.246 second using v1.01-cache-2.11-cpan-a5abf4f5562 )