Force sign up with the Google Identity Toolkit on iOS - ios

Dear GIT team and Stackoverflowers,
I'm using the Google Identity Toolkit in my iOS app and most of it is pretty cool.
I have a question regarding the use of gmail email addresses (everything that's considered a gmail address). Is it possible to force the GIT SDK to create a new account instead of linking with a existing gmail account?
For instance, if I were to try to sign in into my iOS app using my gmail email address, is it possible to indicate to GIT that it should NOT redirect to the Google sign in page, but rather to create a new account?
We've found that this process is a bit confusing for some users and would like to find a way to possibly change the flow a bit.
Appreciate any feedback!

Another option is to use the Rollout Percentage feature in the Identity Toolkit configuration page of Google Developers Console. If you set the rollout percentage to 0, users with #gmail.com will be treated as password accounts. If the percentage is set to 100, all users with #gmail will sign in
Regarding the question "create a new account instead of linking with a existing gmail account?", Google Identity Toolkit creates an account for your application, by copying the email address, name and photo_url from the user's account at Google. These are two separated accounts.

Although I'm not using Gitkit in an iOS app, you should be able to uncheck Google as an authentication option by going to the developers console for the project and clicking APIs > Enabled APIs > Identity Toolkit API > Settings.

Related

How do I implement Google sign-in on iOS app?

I've been tasked with adding a "Sign In with Google" button to an iOS app. For background, I'm a contract developer doing work for a customer, and I do not own the app in question.
I did a quick search for how to do this, but the only answer I could find involved "set up a project in the Google API console" followed by "add a GIDSignInButton to your layout".
I do not have access to the app owner's Google Developer account (or know if they even have one), and I certainly do not want to "set up a project" in my own Google account that is associated with a customer's app.
Furthermore, the iOS project I'm working with does not currently have any third-party library integrations (no Swift packages, no CocoaPods, no workspace file) and I strongly prefer to keep it this way.
Is it possible to do Google authentication using a standard OAuth process (i.e. open a web page, and handle the redirect after authentication completes)? I have done other OAuth integrations this way so I know how it works.
Thanks,
Frank
Yes, you can sign-in using OAuth without using an SDK. Here are the instructions.
You will be required to setup a project and configure it's OAuth settings. This manages how your app will appear to users and implements OAuth security controls. No way around this, so you'll want to work with your Google Cloud administrator to gain access to an existing project or create a new one.

Link providers with Auth UI in iOS

From the recent I/O conference it was mentioned in one of the talks that account works in auth ui, this wasn't the case previously but is now also mentioned as a possibility in the docs
The FirebaseUI Auth component implement best practices for authentication on mobile devices and websites, which can maximize sign-in and sign-up conversion for your app. It also handles edge cases like account recovery and account linking that can be security sensitive and error-prone to handle correctly.
The feature however remains undocumented (from what I can figure out) for the time being (which is understandable since they have just launched it :)). But I was wondering wether anyone is clued in if this in fact is implemented and if so, how to use it?
They mean account linking when for example you sign up with Email A using provider 1 (google) and then try to sign in with a new provider 2(Facebook) which shares the same Email A, FirebaseUI will automatically link both accounts. Typically in that case, you would get an error that the credential exists. You would need to first sign back in with Email A using Google and then link the new Facebook credential to it. By doing so, the user is able to sign in with either providers in the future.

Paypal SDK Client ID

I'm confused about the Client ID I have to enter here. I found a few similar answers, but they are all old and don't answer my question.
So I have to enter my Client ID's here:
PayPalMobile.initializeWithClientIds(forEnvironments: [PayPalEnvironmentProduction: "HERE", PayPalEnvironmentSandbox: "HERE"])
But I don't know if I have to create REST API credentials or v.zero SDK credentials
I tried REST API first, but it didn't work.
And do I only need client ID's? So I don't have to enter the secrets to the email addresses anywhere?
All you need is to go to paypal developer account then
1- Go to Dashboard.
2- Create app.
3- you will find two tabs(sandbox and production) each one will give you an id to test on either modes.
you should also create testing accounts to make testing payments in sandbox mode
Here is a good documentation for Paypal mobile.

Sharing oAuth Access Token in SDK

I'm creating an SDK which provides features that the official app uses. I want to enable oAuth login like Facebook. If a user signs up with Facebook in the official app, how can I have them log in to the same account from via the SDK that is integrated in another app?
Would I share the same access token across the SDK to all clients that implement it? Or is there a way to be able to allow the user to sign in via oAuth into an account that they created through the official app? My current thought is that we pull some ID (e.g. email address) and do a lookup to see if that email address exists in our database and work from there (which could be a pain if the user changes their email address).
Thank you

Ruby Google API key and analytics

I am creating a Ruby application that needs to access dozens (maybe hundreds) of different Google Analytics accounts, query each account, and then generate a report based on the results. I know I can achieve this using Googles API client ( http://code.google.com/p/google-api-ruby-client/ ) and Oauth, but that would require manually generating a set of keys and credentials for each analytics account which is not really feasible. I'm wondering if there is another way to access google analytics (perhaps using the API Keys?) that bypasses the need to generate credentials manually.
After quite a bit of tinkering, I've finally stumbled upon a solution to my particular problem. As it turns out, I don't need to create a separate Developer account for each Analytics account I want to access. I can simply create a single Developer account, and then add that Developer accounts' email address to the set of users that are able to access the Analytics account. This will allow me to access multiple Analytics accounts using the same Developer account.
Yes, it will still require quite a bit of work adding the Developer email account to hundreds of Google Analytics accounts, but it pales in comparison to creating a separate set of Developer credentials for each Analytics account.

Resources