Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Can we implement a openID options in a Native iPhone App?

Tags:

iphone

openid

Is is possible to implement OpenId authentication in iPhone? I found a framework named janrain. But with free sign up, we can avail only features. Is there any other open source framework available?

Thanks !!

like image 725
RK- Avatar asked Aug 10 '10 12:08

RK-


1 Answers

I found a solution that uses a standard UIWebView to handle the authentication. Since cookies are shared within an app, a successful authentication with a UIWebView (that stores a session or authentication cookie) will carry over to other requests.

I don't have a formal framework, but it works like this: I issue a REST request. If the request returns a JSON string, then I'm already authenticated and all is good. If the request returns a redirect (i.e., 301), then the site is trying to redirect for authentication. Here I stop the redirect and present a modal UIWebView with the sign in page. The user can sign in with their OpenID, and once the user is authenticated is redirected to a predetermined success url.

The UIWebView -(void)webViewDidFinishLoad:(UIWebView *)webView delegate method checks each URL after it's loaded, and dismisses the modal once it sees that the success url was requested.

That's basically how I did it and it seems to work.

like image 180
chris Avatar answered Oct 23 '22 10:10

chris