[appengine-java] App Engine integration with Google Apps Marketplace

2010-07-18 Thread Daniel Pascariu
Hi,

I'm trying to enable SSO for my App Engine app in order to put it on
the Google Marketplace.
Let's say that I have my GAE app running at www.example.com. When I
publish it to the Google Marketplace, a Google Apps user (say
us...@domain1.com) will be able to click on a link in the Google menu
pointing to my site - something like this:
http://www.example.com/home?from=google&domain=domain1.com

Now, acording to this docu (http://code.google.com/appengine/docs/java/
users/overview.html) I should use the Users API to authenticate the
user.
I assume I have to use  userService.createLoginURL method somehow and
use the domain "domain1.com" (which is passed as a parameter to my /
home servlet).

I have tried something like this:

Set attributesRequest = new HashSet();
attributesRequest.add("openid.mode=checkid_immediate");
attributesRequest.add("openid.ns=http://specs.openid.net/auth/2.0";);
attributesRequest.add("openid.return_to=" + thisUrl);
userService.createLoginURL(thisUrl, "domain1.com", "https://
www.google.com/accounts/o8/id", attributesRequest);

The probem is that the login URL which I get works for google accounts
only (like gmail accounts) - I do not get any Google Apps page where a
user like us...@domain1.com could login :(

Does anybody know how I can get this working ? Or am I on the wrong
track ?

Many thanks for the help !!
Daniel

-- 
You received this message because you are subscribed to the Google Groups 
"Google App Engine for Java" group.
To post to this group, send email to google-appengine-j...@googlegroups.com.
To unsubscribe from this group, send email to 
google-appengine-java+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-appengine-java?hl=en.



[appengine-java] Re: App Engine integration with Google Apps Marketplace

2010-07-19 Thread Daniel Pascariu
Hi Lorenzo,

Thanks for taking the time to help !

I tried to call userService.createLoginURL with federatedIdentity =
"https://www.google.com/accounts/o8/site-xrds?hd=domain1.com"; as you
suggested and it seems to work :)

But it also works with federatedIdentity = 'domain1.com" !

The produced URLs are slightly different, but the outcome seems the
same - I can login to domain1.com using user1 (on google apps).
I'm wondering if there's any subtle difference between the OpenId
authentification in the two cases - do you know ?

Thanks,
Daniel


On Jul 19, 9:43 am, "l.denardo"  wrote:
> The link to generate login URL is different for apps accounts
>
> String appsLoginUrl = userService.getOpenIdLoginUrl(redirectTo,
> loginDomain,
>                                                 
> "https://www.google.com/accounts/o8/site-xrds?hd="; +
> loginDomain, attributesRequest);
>
> loginDomain is obviously your domain, in your case the URL is
> "https://www.google.com/accounts/o8/site-xrds?hd=domain1.com";
>
> Regards
> Lorenzo
>
> On Jul 15, 11:29 pm, Daniel Pascariu 
> wrote:
>
> > Hi,
>
> > I'm trying to enable SSO for my App Engine app in order to put it on
> > the Google Marketplace.
> > Let's say that I have my GAE app running atwww.example.com. When I
> > publish it to the Google Marketplace, a Google Apps user (say
> > us...@domain1.com) will be able to click on a link in the Google menu
> > pointing to my site - something like 
> > this:http://www.example.com/home?from=google&domain=domain1.com
>
> > Now, acording to this docu (http://code.google.com/appengine/docs/java/
> > users/overview.html) I should use the Users API to authenticate the
> > user.
> > I assume I have to use  userService.createLoginURL method somehow and
> > use the domain "domain1.com" (which is passed as a parameter to my /
> > home servlet).
>
> > I have tried something like this:
>
> > Set attributesRequest = new HashSet();
> > attributesRequest.add("openid.mode=checkid_immediate");
> > attributesRequest.add("openid.ns=http://specs.openid.net/auth/2.0";);
> > attributesRequest.add("openid.return_to=" + thisUrl);
> > userService.createLoginURL(thisUrl, "domain1.com", 
> > "https://www.google.com/accounts/o8/id";, attributesRequest);
>
> > The probem is that the login URL which I get works for google accounts
> > only (like gmail accounts) - I do not get any Google Apps page where a
> > user like us...@domain1.com could login :(
>
> > Does anybody know how I can get this working ? Or am I on the wrong
> > track ?
>
> > Many thanks for the help !!
> > Daniel

-- 
You received this message because you are subscribed to the Google Groups 
"Google App Engine for Java" group.
To post to this group, send email to google-appengine-j...@googlegroups.com.
To unsubscribe from this group, send email to 
google-appengine-java+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-appengine-java?hl=en.