view release on metacpan or search on metacpan
the configuration from the Kerberos 5 profile (F</etc/krb5.conf> by
default).
=item * $kadm5 = Authen::Krb5::Admin->init_with_creds($client, $krb5_ccache[, $service, $kadm5_config])
Authenticate using the credentials cached in $krb5_ccache.
=item * $kadm5 = Authen::Krb5::Admin->init_with_password($client[, $password, $service, $kadm5_config])
Authenticate with $password.
view all matches for this distribution
view release on metacpan or search on metacpan
This uses the keytab file specified in $keytab and uses it to acquire a ticket granting ticket for $principle. This is functionally equivalent to system("kinit -k -t $keytab $principle"), but is done directly through the kerberos libraries.
=item kdestroy()
Erases all credentials in the ticket file.
=item kerror()
returns an error string ended with a "\n" that describes what error happened.
view all matches for this distribution
view release on metacpan or search on metacpan
lib/Authen/Krb5/Simple.pm view on Meta::CPAN
to allow perl scripts to perform authentication against a Microsoft Active
Directory (AD) server configured to accept Kerberos client requests.
B<It is important to note:> This module only performs simple authentication.
It does not get, grant, use, or retain any kerberos tickets. It will check
user credentials against the Kerberos server (as configured on the local
system) each time the I<authenticate> method is called.
=head1 CONSTRUCTOR
B<new>
view all matches for this distribution
view release on metacpan or search on metacpan
lib/Authen/Krb5.pm view on Meta::CPAN
Type can be one of the following: NT_UNKNOWN, NT_PRINCIPAL, NT_SRV_INST,
NT_SRV_HST, NT_SRV_XHST, NT_UID. See the Kerberos documentation for details.
=head2 C<cc_resolve(name)>
Returns a credentials cache identifier which corresponds to the given name.
'name' must be in the form TYPE:RESIDUAL. See the Kerberos documentation
for more information.
=head2 C<cc_default_name()>
Returns the name of the default credentials cache, which may be equivalent
to KRB5CCACHE.
=head2 C<cc_default()>
Returns a L<Authen::Krb5::Ccache> object representing the default credentials
cache.
=head2 C<kt_resolve(name)>
Returns a L<Authen::Krb5::Keytab> object representing the specified keytab name.
lib/Authen/Krb5.pm view on Meta::CPAN
Attempt to get an initial ticket for the client. 'client' is a principal
object for which you want an initial ticket. 'server' is a principal object
for the service (usually C<krbtgt/REALM@REALM>). 'password' is the password
for the client, and 'cc' is a L<Authen::Krb5::Ccache> object representing the
current credentials cache. Returns a Kerberos error code.
Although this interface is deprecated in the Kerberos C libraries, it's
supported in the Perl module. In this module, it's implemented in terms of
C<krb5_get_init_creds_password>, L<krb5_cc_initialize>, and L<krb5_cc_store_cred>.
lib/Authen/Krb5.pm view on Meta::CPAN
Obtain an initial ticket for the client using a keytab. 'client' is a
principal object for which you want an initial ticket. 'server' is a
principal object for the service (usually C<krbtgt/REALM@REALM>). 'keytab' is
a keytab object createed with kt_resolve. 'cc' is a L<Authen::Krb5::Ccache>
object representing the current credentials cache. Returns a Kerberos error
code.
Although this interface is deprecated in the Kerberos C libraries, it's
supported in the Perl module. In this module, it's implemented in terms of
L<krb5_get_init_creds_keytab>, L<krb5_cc_initialize>, and L<krb5_cc_store_cred>.
lib/Authen/Krb5.pm view on Meta::CPAN
suitable for passing to rd_req. 'auth_context' is the L<Authen::Krb5::AuthContext>
object you want to use for this connection, 'ap_req_options' is an OR'ed
representation of the possible options (see Kerberos docs), 'service' is
the name of the service for which you want a ticket (like 'host'), hostname
is the hostname of the server, 'in' can be any user-specified data that can
be verified at the server end, and 'cc' is your credentials cache object.
=head2 C<rd_req(auth_context,in,server,keytab)>
Parses a C<KRB_AP_REQ> message and returns its contents in a L<Authen::Krb5::Ticket>
object. 'auth_context' is the connection's L<Authen::Krb5::AuthContext> object,
lib/Authen/Krb5.pm view on Meta::CPAN
principal to which you are authenticating, e.g. C<service.hostname@REALM>.
The only useful option right now is C<AP_OPTS_MUTUAL_REQUIRED>, which forces
sendauth to perform mutual authentication with the server. 'in' is a string
that will be received by recvauth and verified by the server--it's up to the
application. 'in_creds' is not yet supported, so just use 'undef' here. 'cc'
should be set to the current credentials cache. sendauth returns true
on success and undefined on failure.
=head2 C<recvauth(auth_context,fh,version,server,keytab)>
Receives authentication data from a client using the sendauth function through
view all matches for this distribution
view release on metacpan or search on metacpan
Krb5Password.pm view on Meta::CPAN
use the Kerberos protocol directly. If it must be run on a system that
receives a username and password over the network, steps should be
taken to ensure that these are passed to the server in a cryptographically
secure manner.
kpass() attempts to obtain credentials for the given username and password
from the Kerberos AS, then obtain credentials for a local service from the
Kerberos TGS to verify the authenticity of the AS response. Empty strings
can be passed as the 3rd and/or 4th arguments to use the default service
name ("host") and the fully canonicalized primary hostname of the system
that the function is executed on. The fifth argument may be omitted to use
the system's default keytab file.
view all matches for this distribution
view release on metacpan or search on metacpan
lib/Authen/NTLM/HTTP.pm view on Meta::CPAN
| Authen::NTLM::NTLMSSP_NEGOTIATE_UNICODE
| Authen::NTLM::NTLMSSP_REQUEST_TARGET;
$auth_msg = $client->http_auth($nonce, $flags);
# Stage 6 Scenario: Finally the server parses the reply
# verify the authentication credentials.
# To parse a NTLM Response Packet
($flags, $lm_resp, $nt_resp, $user_domain, $username, $machine) =
$server->http_parse_auth($auth_msg);
view all matches for this distribution
view release on metacpan or search on metacpan
lib/Authen/Passphrase/SaltedSHA512.pm view on Meta::CPAN
to generate a good salt.
The hashing algorithm chosen is the SHA-512 hash function from the SHA-2
family. Currently SHA-512 is a leading edge standard in strong hashing.
The salt generated when creating authentication credentials is a 512 bit
random string. The random number generating algorithm used comes from
L<Bytes::Random::Secure|http://search.cpan.org/perldoc?Bytes::Random::Secure>.
That module uses Math::Random::ISAAC, "I<...a cryptographically-strong random
number generator with no known serious weaknesses.>" Bytes::Random::Secure
obtains its seed using Crypt::Random::Seed. The reason that
view all matches for this distribution
view release on metacpan or search on metacpan
examples/authen_prompt_all.pl view on Meta::CPAN
use warnings;
use Authen::Prepare 0.04;
use Smart::Comments;
# Prompt for everything
my %auth = Authen::Prepare->new->credentials();
### %auth
view all matches for this distribution
view release on metacpan or search on metacpan
lib/Authen/SASL/Perl/DIGEST_MD5.pm view on Meta::CPAN
my $final_response = _response(\%response);
$cb->($final_response);
return;
}
sub client_step { # $self, $server_sasl_credentials
my ($self, $challenge) = @_;
$self->{server_params} = \my %sparams;
# Parse response parameters
$self->_parse_challenge(\$challenge, server => $self->{server_params})
view all matches for this distribution
view release on metacpan or search on metacpan
lib/Authen/SCRAM.pm view on Meta::CPAN
};
### SERVER SIDE ###
$server = Authen::SCRAM::Server->new(
credential_cb => \&get_credentials,
);
$username = try {
# get client-first-message
view all matches for this distribution
view release on metacpan or search on metacpan
lib/Authen/Simple/CDBI.pm view on Meta::CPAN
return 0;
}
unless ( $self->check_password( $password, $encrypted ) ) {
$self->log->debug( qq/Failed to authenticate user '$username'. Reason: 'Invalid credentials'/ )
if $self->log;
return 0;
}
view all matches for this distribution
view release on metacpan or search on metacpan
lib/Authen/Simple/DBI.pm view on Meta::CPAN
return 0;
}
unless ( $self->check_password( $password, $encrypted ) ) {
$self->log->debug( qq/Failed to authenticate user '$username'. Reason: 'Invalid credentials'/ )
if $self->log;
return 0;
}
view all matches for this distribution
view release on metacpan or search on metacpan
lib/Authen/Simple/DBM.pm view on Meta::CPAN
return 0;
}
unless ( $self->check_password( $password, $encrypted ) ) {
$self->log->debug( qq/Failed to authenticate user '$username'. Reason: 'Invalid credentials'/ )
if $self->log;
return 0;
}
view all matches for this distribution
view release on metacpan or search on metacpan
t/00.load.t view on Meta::CPAN
skip 'Please specify a valid username and password (in that order on a line by itself) in .gmail.test.config', 2 unless $username && $password;
SKIP: {
skip 'These tests require connectivity to pop.gmail.com over port 995.', 2 unless detect_net( 'pop.gmail.com', 995 );
ok( $gmail_auth->authenticate( $username, $password ), 'authenticate() valid credentials return true' );
ok( !$gmail_auth->authenticate( $username, $password . $$ . time ), 'authenticate() invalid credentials return false' );
}
}
view all matches for this distribution
view release on metacpan or search on metacpan
lib/Authen/Simple/HTTP.pm view on Meta::CPAN
# This implementation is very hackish, however I could not find a cleaner
# way to implement this without forking a lot of code from LWP::UserAgent.
# Please let me know if you have any ideas of improvements.
my $override = sprintf '%s::get_basic_credentials', ref $self->agent;
my $response = undef;
my $url = $self->url;
# First make sure we receive a challenge
lib/Authen/Simple/HTTP.pm view on Meta::CPAN
if $self->log;
return 0;
}
# We have a challenge, issue a new request with credentials.
{
no strict 'refs';
no warnings 'redefine';
lib/Authen/Simple/HTTP.pm view on Meta::CPAN
$response = $self->agent->head($url);
}
if ( $response->code == 401 ) {
$self->log->debug( qq/Failed to authenticate user '$username' using url '$url'. Reason: 'Invalid credentials'/ )
if $self->log;
return 0;
}
view all matches for this distribution
view release on metacpan or search on metacpan
lib/Authen/Simple/LDAP.pm view on Meta::CPAN
if $self->log;
return 0;
}
my ( @credentials, $message, $search, $entry, $filter, $dn );
@credentials = $self->binddn ? ( $self->binddn, password => $self->bindpw ) : ();
$message = $connection->bind(@credentials);
if ( $message->is_error ) {
my $error = $message->error;
my $binddn = $self->binddn;
lib/Authen/Simple/LDAP.pm view on Meta::CPAN
binddn => 'uid=proxy,cn=users,dc=company,dc=com'
=item * bindpw
The credentials to bind with.
bindpw => 'secret'
=item * basedn
view all matches for this distribution
view release on metacpan or search on metacpan
lib/Authen/Simple/NIS.pm view on Meta::CPAN
my $encrypted = ( split( /:/, $entry ) )[1];
unless ( $self->check_password( $password, $encrypted ) ) {
$self->log->debug( qq/Failed to authenticate user '$username'. Reason: 'Invalid credentials'/ )
if $self->log;
return 0;
}
view all matches for this distribution
view release on metacpan or search on metacpan
lib/Authen/Simple/Passwd.pm view on Meta::CPAN
next if /^#/;
next if /^\s+/;
chop;
my (@credentials) = split( /:/, $_, 3 );
if ( $credentials[0] eq $username ) {
$encrypted = $credentials[1];
$self->log->debug( qq/Found user '$username' in passwd '$path'./ )
if $self->log;
last;
lib/Authen/Simple/Passwd.pm view on Meta::CPAN
return 0;
}
unless ( $self->check_password( $password, $encrypted ) ) {
$self->log->debug( qq/Failed to authenticate user '$username'. Reason: 'Invalid credentials'/ )
if $self->log;
return 0;
}
view all matches for this distribution
view release on metacpan or search on metacpan
lib/Authen/Simple/SMB.pm view on Meta::CPAN
$self->log->error( qq/Failed to authenticate user '$username' using domain '$domain'. Reason: 'Received a Protocol Error'/ )
if $self->log;
}
if ( $status == 3 ) { # NTV_LOGON_ERROR
$self->log->debug( qq/Failed to authenticate user '$username' using domain '$domain'. Reason: 'Invalid credentials'/ )
if $self->log;
}
return 0;
}
view all matches for this distribution
view release on metacpan or search on metacpan
lib/Authen/Simple/Twitter.pm view on Meta::CPAN
=cut
sub check {
my ( $self, $username, $password ) = @_;
$self->net_twitter->credentials(
$username, $password,
$self->net_twitter->{apihost},
$self->net_twitter->{apirealm}
);
if ( my $response = $self->net_twitter->verify_credentials() ) {
$self->log->debug(qq/Successfully authenticated user '$username'./)
if $self->log;
return 1;
view all matches for this distribution
view release on metacpan or search on metacpan
examples/ex1.pl view on Meta::CPAN
my $webform = Authen::Simple::WebForm->new(
'log' => $log,
initial_url => 'http://freshmeat.net/session/new?return_to=/',
login_url => 'http://freshmeat.net/session',
login_expect => 'href="/logout"',
login_expect_cookie => 'user_credentials',
username_field => 'user_session[login]',
password_field => 'user_session[password]',
extra_fields => [
'commit' => 'Log in!',
'user_session[remember_me]' => 0,
view all matches for this distribution
view release on metacpan or search on metacpan
lib/Authen/Simple/Adapter.pm view on Meta::CPAN
if $self->log;
return 1;
}
$self->log->debug( qq/Failed to authenticate user '$username'. Reason: 'Invalid credentials'/ )
if $self->log;
return 0;
}
view all matches for this distribution
view release on metacpan or search on metacpan
SimplePam.pm view on Meta::CPAN
unless (defined ($result));
if ( $result == 0 ) { return "Authen::PAM error" }
elsif ( $result == 1 ) { return "success" }
elsif ( $result == 2 ) { return "failure" }
elsif ( $result == 3 ) { return "insuficient credentials" }
elsif ( $result == 4 ) { return "authentication information unavailable" }
elsif ( $result == 5 ) { return "user unknown" }
elsif ( $result == 6 ) { return "maximum tries" }
elsif ( $result == 7 ) { return "unknown error" }
elsif ( $result == 8 ) { return "authentication error" }
SimplePam.pm view on Meta::CPAN
elsif ( $result == 15 ) { return "symbol not found" }
elsif ( $result == 16 ) { return "memory buffer error" }
elsif ( $result == 17 ) { return "the password should be changed" }
elsif ( $result == 18 ) { return "user account has expired" }
elsif ( $result == 19 ) { return "cannot make/remove an entry for the specified session" }
elsif ( $result == 20 ) { return "cannot retrieve users credentials" }
elsif ( $result == 21 ) { return "user credentials expired" }
elsif ( $result == 22 ) { return "no pam module specific data is present" }
elsif ( $result == 23 ) { return "conversation error" }
elsif ( $result == 24 ) { return "ignore underlying account module" }
elsif ( $result == 25 ) { return "critical error" }
elsif ( $result == 26 ) { return "user authentication has expired" }
SimplePam.pm view on Meta::CPAN
The password does not match.
=item 3 Insufficient Credentials.
For some reason the application does not have enough credentials to authenticate the user.
E.g. A non-root user trying to authenticate/validate the root user password.
=item 4 Authentication information unavailable.
The modules were not able to access the authentication information. This might be due to a network or hardware failure etc.
view all matches for this distribution
view release on metacpan or search on metacpan
lib/AxKit2/Client.pm view on Meta::CPAN
}
elsif ($code == UNAUTHORIZED) {
$self->write("<p>This server could not verify that you\n" .
"are authorized to access the document\n" .
"requested. Either you supplied the wrong\n" .
"credentials (e.g., bad password), or your\n" .
"browser doesn't understand how to supply\n" .
"the credentials required.</p>\n");
}
elsif ($code == FORBIDDEN) {
$self->write("<p>You don't have permission to access " .
xml_escape($self->headers_in->uri) .
"\non this server.</p>\n");
view all matches for this distribution
view release on metacpan or search on metacpan
lib/Azure/AD/ClientCredentials.pm view on Meta::CPAN
return if $self->expiration >= time;
my $auth_response = $self->ua->post_form(
$self->token_endpoint,
{
grant_type => 'client_credentials',
client_id => $self->client_id,
client_secret => $self->secret_id,
resource => $self->resource_id,
}
);
view all matches for this distribution
view release on metacpan or search on metacpan
bin/bgpmon_analytics_db_import view on Meta::CPAN
BEGIN{
our $VERSION = '1.07';
};
#step 1: set up script args (DB name/credentials, data source, log file name,
#config file name)
#step 2: fetch data from the specified data source
#step 3: convert the XML to hashes
#step 4: grab the fields I'm interested in
#step 5: insert fields into DB staging table
bin/bgpmon_analytics_db_import view on Meta::CPAN
);
use constant MAX_UPDATES_PER_INJECT => 1000;
#Define parameters for logging (filename, level, use syslog)
#Define parameters for system state (DB name,DB credentials, config filename)
#Define parameters for data retrieval (source, Fetch parameters)
my @params = (
{
'Name' => BGPmon::Configure::CONFIG_FILE_PARAMETER_NAME,
'Type' => BGPmon::Configure::FILE,
view all matches for this distribution
view release on metacpan or search on metacpan
examples/authenticate.pl view on Meta::CPAN
use JSON::XS;
use Backblaze::B2;
use Getopt::Long;
GetOptions(
'c|credentials:s' => \my $credentials_file,
'o|application-credentials:s' => \my $app_credentials_file,
);
$app_credentials_file ||= './app-credentials.json';
=head1 SYNOPSIS
=head1 SEE ALSO
examples/authenticate.pl view on Meta::CPAN
my $b2 = Backblaze::B2->new(
version => 'v1',
log_message => sub { warn sprintf "[%d] %s\n", @_; },
);
my $credentials = $b2->read_credentials( $credentials_file );
use Data::Dumper;
my ($app_credentials) = $b2->authorize_account(
%$credentials
);
open my $fh, '>', $app_credentials_file
or die "Couldn't write credentials to '$app_credentials_file'";
binmode $fh;
print {$fh} encode_json( $app_credentials );
view all matches for this distribution
view release on metacpan or search on metacpan
lib/Backblaze/B2V2Client.pm view on Meta::CPAN
=head2 Testing Your Credentials
During install, this module will attempt to connect to B2 and download
a 16KB file into memory. To test using your B2 account
credentials, set these environmental varables prior to attempting
to install:
B2_APP_KEY_ID - The application key ID for the key you wish to test.
B2_APP_KEY - The application key -- is never displayed in the B2 UI.
B2_ACCT_ID - Your account ID; will be the ID of your master key
view all matches for this distribution
view release on metacpan or search on metacpan
lib/Backblaze/B2V4.pm view on Meta::CPAN
=head2 Testing Your Credentials
During install, this module will attempt to connect to B2 and download
a 16KB file into memory. To test using your B2 account
credentials, set these environmental varables prior to attempting
to install:
B2_APP_KEY_ID - The application key ID for the key you wish to test.
B2_APP_KEY - The application key -- is never displayed in the B2 UI.
B2_ACCT_ID - Your account ID; will be the ID of your master key
view all matches for this distribution
view release on metacpan or search on metacpan
lib/Bb/Collaborate/Ultra.pm view on Meta::CPAN
use Bb::Collaborate::Ultra::Connection;
use Bb::Collaborate::Ultra::Session;
use Bb::Collaborate::Ultra::User;
use Bb::Collaborate::Ultra::LaunchContext;
my %credentials = (
issuer => 'OUUK-REST-API12340ABCD',
secret => 'ABCDEF0123456789AA',
host => 'https://xx-csa.bbcollab.com',
);
# connect to server
my $connection = Bb::Collaborate::Ultra::Connection->new(\%credentials);
$connection->connect;
# create a virtual classroom, starts now runs, for 15 minutes
my $start = time() + 60;
my $end = $start + 900;
view all matches for this distribution