OIDC - Social Sign In
Our SDK supports Social Sign In using OIDC with the implicit flow.
Currently supported OIDC providers include:
- Google -> Builder Setup
- Apple -> Builder Setup
Built-in UI
If you are using the built-in UI, OIDC sign in is enabled by default. The user can click on the "Google" or "Apple" sign in buttons on the built-in UI to trigger this flow.
Android Requirements
Google: In order to be able to properly use Google Auth, create and place the Keystore file by following these instructions.
You will also need to generate an [Android client ID] and a [Web Application client ID] for your application. And place the [Web Application client ID] in the [YourProject/Config/SequenceConfig.ini]
, [GoogleClientID] field.
Refer to these docs to generate [Android client ID] and [Web Application client ID].
This guide helps explain how to collect SHA-1 key fingerprints for the [Android client ID].
Apple: Please ensure you have a proper [AppleClientID] set in [YourProject/Config/SequenceConfig.ini]
iOS Requirements
Google: Please ensure you have a proper [GoogleClientID] set in [YourProject/Config/SequenceConfig.ini]
Apple: Please ensure you have a proper [AppleClientID] set in [YourProject/Config/SequenceConfig.ini]
, be sure you register and set your bundle identifier properly for your app
Apple Specific Requirements
For Apple sign in to work please be sure to register the [RedirectUrl] in [YourProject/Config/SequenceConfig.ini] appropriately for your app.
Custom UI Integration
Desktop
To start SSO based authentication with desktop you will need to navigate to a browser in order to get the necessary id_token.
To get the URL to navigate to you can use the UAuthenticator supplied call [FString GetSigninURL(const ESocialSigninType& Type)]
where Type is the social login type you wish to use
With whatever implementation you chose you can forward the collected id_token to the UAuthenticator object with [SocialLogin(const FString& IDTokenIn)]
, after which [AuthSuccess]
will fire and you're done desktop based SSO.
Mobile
To start mobile SSO you will need to make use of the [UAuthenticator::InitiateMobileSSO(const ESocialSigninType& Type)]
where type is the Type of SSO you want to use. IE) Google or Apple, for the time being Discord & Facebook aren't supported. This function call is all that's required for Mobile SSO