Ive spent days searching the web and im drawing a blank. I simply want
to integrate RPX (janrain) into Appengine - lods of code for the
script inserts and the return of the openid token - thats all great -
but other than that no-one seems to take it any further as in actually
create an openid login that works - why? i assume no session
management?
Here is a simple class handler that gets the TOKEN for the open id and
then makes a fetch to grab the users profile. All very simple using
RPX.
class RPXHandler(webapp.RequestHandler):
def get(self):
token = self.request.get('token')
url = 'https://rpxnow.com/api/v2/auth_info'
args = {
'format': 'json',
'apiKey': '#YOUR KEY#',
'token': token
}
r = urlfetch.fetch(url=url,
payload=urllib.urlencode(args),
method=urlfetch.POST,
headers={'Content-Type':'application/x-www-form-
urlencoded'}
)
json = simplejson.loads(r.content)
logging.info(json)
if json['stat'] == 'ok':
unique_identifier = json['profile']['identifier']
nickname = json['profile']['preferredUsername']
email = json['profile']['email']
# log the user in using the unique_identifier
# this should your cookies or session you already have
implemented
self.redirect('static/loggedin.html')
else:
self.redirect('static/error.html')
Now # here is where the problem starts - ideally we could be lazy and
just log them into Google accounts - but their is no method to log a
user in ie;
user.login(email)
so that abandons any hope of using google accounts - and to fair if we
have open id - why bother!
SO...
Next easy route - sessions - but in webapp appengine their are none -
Can anyone HAS anyone made this work - need some method of protecting
each page - ie Login=true
A method to log out
A method to get user credentials
Basically a simple user system using RPX/Openid - Dont need register
or passwords - just a user system that auths through RPX/Openid and
stored the data on app engine etc
I hope this make sense?
Martin
--
You received this message because you are subscribed to the Google Groups
"Google App Engine" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/google-appengine?hl=en.