Question

I have built a CGI::Application currently running on local host and have used 2 authentication methods -
1. descried in http://www.perlmonks.org/?node_id=622071 by storing user password in database and
2. using LDAP credentials.

I was looking for a simple way to do google authentication but haven't found an easy way yet. Can someone point me in the right direction.

I looked at
1. Authen-GoogleAccount and
2. net-Google-FederatedLogin

but not enough documentation for either of these. Where do i start? Please let me know even if you have some pointer to doing this outside of cgi::application

Was it helpful?

Solution

This is the closest solution I could find. I am not a security expert, but I don't think websites serious about it would use this method. It uses WWW::Mechanize to authenticate using google email/password and then pull secure content out.

http://gregjessup.com/login-to-google-using-perl/

if $mech->get($url); returns error, authentication failed.

OTHER TIPS

Here's the code I used for the Android Market for Developers (market.android.com/publish):

use WWW::Mechanize;
use HTTP::Cookies;

my $url = 'https://www.google.com/accounts/ServiceLogin';
my $username = 'username@gmail.com';                                                          
my $password = "PASSWORD";
my $mech = WWW::Mechanize->new();
$mech->cookie_jar(HTTP::Cookies->new());
$mech->get($url);
$mech->form_number(1);
$mech->field(Email => $username);
$mech->field(Passwd => $password);
$mech->click();
# Go to the next link, now that we are logged in.                                                                                   
$url = 'https://market.android.com/publish/Home';
$mech->get($url);
print $mech->content();

It's a small edit/cleanup of the link Prateek posted: http://gregjessup.com/login-to-google-using-perl. I think it should be able to be used for most of Google's services that require you to be logged in.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top