integrate login to my sites with OpenId or OAuth - authentication

i have a few site developed with zend framework 1 and zend framework 2,i wanna users register in main site and in other sites i want to have a login button ,if user click on login:
1- if user logged in in main site ago , user login without enter any information.
2- if user not logged in in main site a popup open and ask his username/password of main site ,then login to site.
i don't understand is that possible with OpenId or OAuth.
in OpenId user must generate a OpenId Id for example:
http://www.example.com/USERNAME
but i prefer user don't enter any additional information.
for example in the Stackoverflow you can use Google or Yahoo account.
if you wanna use yahoo account it asked your OpenId,but i don't know what system Google use that it not asked for any id and just user enter his email and password if is not logged in to his Google account,
I prefer Google System that user do not enter any Url to login.
sincerely

Clicking the Google button on the Stackoverflow login screen secretly fills the URL
https://www.google.com/accounts/o8/id
as OpenID URL. This is an XRDS file which tells the OpenID library where the auth server can be found.
The OpenID spec defines this in section 7.3.1:
If the end user entered an OP Identifier, there is no Claimed Identifier. For the purposes of making OpenID Authentication requests, the value "http://specs.openid.net/auth/2.0/identifier_select" MUST be used as both the Claimed Identifier and the OP-Local Identifier when an OP Identifier is entered.

Related

Why is Salesforce redirecting all my community users to the same user while using an external Identity identity provider?

There is a Salesforce application with community users who have a landing page URL for which access needs to be provided to endusers through email which cannot be done. The requirement is for the enduser to make use of their phone number or employee id as they cannot have fresh email addresses.
When i try to connect the SFDC to my external IDP, it is able to go with the IDP for authentication and finally login to the application. However the user that is logged in always reverts back to a single user in the application though i make use of seperate logins for each time.
Ex: User login is alex12 and i login, it will take me through to the landing page in the community page.
user login is mike23 and when i login, it will pass through fine but the landing page in the community page will still show alex12 instead of mike23.
What should i do to get all the users in community user to login and land on the community page successfully for each user?
Any help is appreciated as i need to deploy for a client and this on the escalation track.

ServiceM8 Oauth Authentication not working

I am trying to set up an integration API between ServiceM8 and another 3rd party application. I need to create a webhook which requires Platform Services Authentication using Oauth.
I have created a developer account and a store item after which I got the APP ID and APP Secret which are required for the authenticatcation.
I initiated the authentication by redirecting the user to the url
https://www.servicem8.com/oauth/authorize?response_type=code&client_id=[App ID]&redirect_uri=[my redirect url]&scope=manage_jobs
The user was es expected directed to the login page.
However after logging in, instead of prompting the user to accept the required permissions and redirecting to the redirect_url the user is being redirected to the ServiceM8 dashboard page.
Can someone please help me.
Thanks

Login without password via link with authentication token

To make the experience for our users more convenient we implemented a feature with allowed a user to automatically get logged in when he clicks on a link he received via email.
In the past he had to click on the link and then had to enter his password. By providing a special security token in the link, we can now automatically login the user without the need for entering his password.
A few days after we went live with this feature, internal pages (which can only be accessed via password or via the special email link) appeared in the google search results. We are using Gmail as a Email provider for sending emails from our system.
The only explanation I have for this behaviour is, that google is crawling the links in the emails. Which is not very nice from them if those are "private" links.
Is there a safe way to still allow users to login without password via a special link they receive in their email, without google being able to crawl the internal pages?

Application name on requesting login using oauth

My ASP.NET MVC has login with Google, Facebook and Microsoft. It works fine. But when the user tries to login with gmail, the next message is shown in the google login page:
IP_ADDRESS_SERVER is asking for some information from your Google Account. To see and approve the request, sign in. Learn more
Instead of showing the ip address, I would like to show the application name or the domain, something like:
MyWebApplication is asking for some information from your Google Account. To see and approve the request, sign in. Learn more
or
www.mywebsite.com is asking for some information from your Google Account. To see and approve the request, sign in. Learn more
How can I achieve that? Should I change some configuration in the application?
You need to register the application with Google.

How to implement "Share" button with GAE

I want to implement a "Share" button similar to Facebook´s "Like" button.
Is it possible to build an API on Google App Engine and allow users to login through 3rd party websites(after clicking on the "Share" button) to submit information to the API?
I want to prompt the user to select from multiple sign-in accounts when clicking on the "Share" button. Is there a way to prompt the user with the OpenID selector on a 3rd party website? What other options are there to prompt the user with multiple sign-in accounts?
Thanks!
1) Yes and its well documented.
Start here http://code.google.com/appengine/docs/python/users/overview.html#Authentication_Options
App Engine does not provide a user interface API for OpenID sign-in. Your OpenID sign-in user interface must allow the user to enter a URL that serves as an OpenID identifier. You might also include a pop-up menu listing the domain names of popular OpenID providers, along with a box for the user to type the unique part of the URL. For more information on the user interface for OpenID sign-in, see User Experience summary for Federated Login.
2) In the text I quoted they mention that your site need to ask the user for a an URL that serves as an OpenID identifier. That is exactly what you could use openid-selector for. The selector is a Javascript tool and runs on the client, not third party servers. You could have your share button bind the "onclick" event to open the selector.