Show TOC

SAML AuthenticationLocate this document in the navigation structure

Develop SAML-enabled registration for iOS.

To implement SAML-enabled registration, you:
  • Set the runtime settings
  • Integrate with SAP Mobile Place

You can use these approaches with MAF Logon or the Apple iOS NUserDefaults API.

MAF Logon

Using MAF Logon is the simplest and recommended way to use SAML-protected resources. By default, MAF Logon uses Mobile Place and gets the configuration based on the end user's e-mail address. Once you integrate MAF Logon into your application, you have completed SAML enablement on the client side. To use a different setup, use the MAF Logon runtime configuration to enable the SAML flow. SAML support is integrated with the HttpConversation library via the IManagerCoonfigurator that is object exposed by the LogonUIFacade class. Refer to the documentation of these classes and to that of the HttpConversationManager class.

Place the structure inside the MAFLogonConfigurationContextDefaultValues.plist. For example:
//Get the defaultValues object form NSUserDefaults
NSMutableDictionary* defaultValues = [self.logonUIViewManager.logonManager defaultValues];

//Get config dictionary from defaulValues dictionary
NSMutableDictionary* config = [defaultValues objectForKey:@"keyMAFLogonRegistrationContextConfig"];

//Get auth array from config dictionary
NSMutableArray* auth = [defaultValues objectForKey:@"keyMAFLogonRegistrationContextAuth"];

//Set new content
NSMutableDictionary* samlAuth = [[NSMutableDictionary alloc] init];
[samlAuth setObject:@"saml2.web.post" forKey:@"type"];
NSMutableDictionary* samlConfig = [[NSMutableDictionary alloc] init];
[samlConfig setObject:@"com.sap.cloud.security.login" forKey:@"saml2.web.post.authchallengeheader.name"];
[samlConfig setObject:@"finishEndpointParam" forKey:@"saml2.web.post.finish.endpoint.redirectparam"];
[samlConfig setObject:@"saml2.web.post.finish.endpoint.uri" forKey:@"/SAMLAuthLauncher"];
[samlAuth setObject:samlConfig forKey:@"config"];
[config setObject:samlAuth forKey:@"keyMAFLogonRegistrationContextAuth"];
Apple iOS NUserDefaults API