Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to implement Single Sign-On on iOS

I am a new enterprise iOS developer. We are developing an app that is managing our enterprise apps(somehow like a app store&MDM).

I stacked by a issue :

I want to implement Single Sign-On for our enterprise Apps (Not with the same Developer ID), which means if the app-store App is signed in, the other apps(involved in our enterprise app platform) do not need users to enter ID & PassWord again.

I have searched for the same and I got some information which mentioned sharing keychain and iOS Kerberos SSO. But sharing the keychain is not available for apps developed by different Developers and I cannot find some detailed resource about Kerberos for iOS SSO.

Therefore, what I need is:

  • Is the Kerberos SSO OK for my case?
  • I want some detailed tutorial or articles through which I can learn How to make a SSO server and how to configure my iOS application?
like image 700
Yue Kong Avatar asked May 20 '15 08:05

Yue Kong


People also ask

What is SSO in iOS?

Organisations often make use of Single sign-on. (SSO), which is designed to improve the users' sign-in experience to apps and websites. With SSO, a common authentication process is used to access multiple apps or systems — without the user asserting their identity again.

How do I add an SSO to an app?

Add an application for SSOEnter the Application Name and Domain Name. Select the Enable Single Sign-On checkbox. Enter the Relay State and any other application-specific information as required. Click Add Application.

How does SSO work in mobile app?

The Mobile SSO processThe SSO solution is based on using these web controllers to allow the user to access the shared session that exists in the System Browser. With this the solution is quite similar to how it works on a regular web application see Web Client SSO with OpenID Connect.


1 Answers

Apparently iOS 8 includes a certificate-support that allows the use of certificate-based single sign-on for users to authenticate to enterprise apps.

Accounts Framework

The Accounts framework (Accounts.framework) provides a single sign-on model for certain user accounts. Single sign-on improves the user experience by eliminating the need to prompt the user separately for multiple accounts. It also simplifies the development model for you by managing the account authorization process for your app. You use this framework in conjunction with the Social framework.

So you should take a look in Accounts Framework Reference

like image 62
Niko Avatar answered Oct 20 '22 01:10

Niko