Swiftpack.co - ForgeRock/forgerock-ios-sdk as Swift Package

Swiftpack.co is a collection of thousands of indexed Swift packages. Search packages.
See all packages published by ForgeRock.
ForgeRock/forgerock-ios-sdk FRUI-2.0.0-beta1
ForgeRock Mobile iOS SDK
⭐️ 27
🕓 2 years ago
.package(url: "https://github.com/ForgeRock/forgerock-ios-sdk.git", from: "FRUI-2.0.0-beta1")

Cocoapods Build and Test


ForgeRock SDK for iOS

Change Log · Support · Docs

The ForgeRock iOS SDK enables you to quickly integrate the ForgeRock Identity Platform into your iOS apps.

Use the SDKs to leverage Intelligent Authentication in ForgeRock's Access Management (AM) product, to easily step through each stage of an authentication tree by using callbacks.


  • ForgeRock Identity Platform
    • Access Management (AM) 6.5.2+
  • iOS 12 and above
  • Xcode
  • Swift 5.x or Objective-C
  • CocoaPods or Swift Package Manager (optional)



Use the following pods in your Podfile to install FR iOS SDK module(s) if you want to install the latest version.

pod 'FRAuth' // Authentication module for Access Manager
pod 'FRUI' // UI SDK demonstrates FRAuth SDK functionalities
pod 'FRProximity' // Add-on for FRAuth's Device Profile feature related to location, and BLE
pod 'FRAuthenticator' // Authenticator module that generates HOTP, TOTP, and Push registration/authentication
pod 'FRGoogleSignIn' // Social Login module for Google Sign In
pod 'FRFacebookSignIn' // Social Login module for Facebook Login
pod 'FRDeviceBinding' // Add-on for Device Binding feature

Swift Package Manager

  • The ForgeRock iOS SDK is available via Swift Package Manager from 3.0.0 and above. Any older versions (2.2.0 and below) are only available via Cocoapods.
  • FRGoogleSignIn module is currently not available in Swift Package Manager; use Cocoapods instead to integrate FRGoogleSignIn module.
  1. In Xcode menus, File -> Swift Packages -> Add Package Dependencies...
  2. Select the project to integrate the ForgeRock iOS SDK
  3. Enter the url of the repo: https://github.com/ForgeRock/forgerock-ios-sdk
  4. Select module(s) to integrate into the project

Getting Started

To try out the ForgeRock iOS SDK sample, perform these steps:

  1. Setup Access Management (AM) as described in the documentation:
  2. Clone this repo:
    git clone https://github.com/ForgeRock/forgerock-ios-sdk.git
  3. Open the SampleApps/QuickstartExample/Quickstart.xcodeproj file in Xcode.
  4. Open /Quickstart/FRAuthConfig.plist and edit the values to match your AM instance.
  5. Ensure the active scheme is "Quickstart", and then click the Run button.


ForgeRock provides these samples to help demonstrate SDK functionality:

  • Swift Sample - /FRExample/

    This sample Swift app demonstrates authenticating to an AM instance, both with and without the FRUser automatic user interface.

    Other features include:

    • OAuth 2.0 access tokens
    • Logout
    • Collecting device information
    • Get the current user's details
    • Jailbreak detection

    Configure your AM instance settings in the /FRexampleObjC/FRexampleObjC/Configs/FRAuthConfig.plist file to use this sample application.

  • Objective-C Sample - /FRexampleObjC/

    This sample Objective-C app demonstrates authenticating to an AM instance, both with and without the FRUser automatic user interface.

    Other features include:

    • Logout
    • Collecting device information
    • Get the current user's details
    • Jailbreak detection

    Configure your AM instance settings in the /FRExample/FRExample/Configs/FRAuthConfig.plist file to use this sample application.

  • Authenticator App Sample - /FRAuthenticatorExample/ This Authenticator sample app demonstrates HMAC-based, and Time-based One-time Password, and Push Registration and Authentication with ForgeRock's Access Manager.


Documentation for the SDKs is provided on BackStage, and includes topics such as:

  • Introducing SDK features
  • Preparing AM for use with the SDKS
  • API Reference documentation


If you encounter any issues, be sure to check our Troubleshooting pages.

Support tickets can be raised whenever you need our assistance; here are some examples of when it is appropriate to open a ticket (but not limited to):

  • Suspected bugs or problems with ForgeRock software.
  • Requests for assistance - please look at the Documentation and Knowledge Base first.

You can raise a ticket using BackStage, our customer support portal that provides one stop access to ForgeRock services.

BackStage shows all currently open support tickets and allows you to raise a new one by clicking New Ticket.


If you would like to contribute to this project you can fork the repository, clone it to your machine and get started.


This code is provided by ForgeRock on an “as is” basis, without warranty of any kind, to the fullest extent permitted by law. ForgeRock does not represent or warrant or make any guarantee regarding the use of this code or the accuracy, timeliness or completeness of any data or information relating to this code, and ForgeRock hereby disclaims all warranties whether express, or implied or statutory, including without limitation the implied warranties of merchantability, fitness for a particular purpose, and any warranty of non-infringement. ForgeRock shall not have any liability arising out of or related to any use, implementation or configuration of this code, including but not limited to use for any commercial purpose. Any action or suit relating to the use of the code may be brought only in the courts of a jurisdiction wherein ForgeRock resides or in which ForgeRock conducts its primary business, and under the laws of that jurisdiction excluding its conflict-of-law provisions.


This project is licensed under the MIT License - see the LICENSE file for details

© Copyright 2022 ForgeRock AS. All Rights Reserved


Stars: 27
Last commit: Yesterday
Advertisement: IndiePitcher.com - Cold Email Software for Startups

Release Notes

4.3.0 Release
8 weeks ago

ForgeRock iOS SDK 4.3.0 Release


  • AppIntegrity Callback support [SDKS-2630] [SDKS-2761]
  • New ephemeralAuthSession browser type (iOS13+) [SDKS-2707]
  • iat and nbf claims to Device Binding jws payload [SDKS-2748]
  • Custom claims to device signing verifier [SDKS-2788]


  • Fixed an issue where the issuer parameter was not properly parsed when using AM 7.2.x [SDKS-2653]
  • Updated Jailbreak Detectors [SDKS-2796]
  • Fixed an issue related to Inadequate Cache Control [SDKS-2700]
  • Fixed the issue when sfViewController setting in Centralized login had the "entersReaderIfAvailable" as true [SDKS-2746] 
  • Fixed the issue with DeviceProfile Collector affecting phones with dual sim cards in iOS 16.3 and earlier [SDKS-2776]
  • Improved unit and e2e tests [SDKS-2637]
  • Fixed the issue with device binding api access level [SDKS-2886]
  • Fixed the issue with removing userkey from local device repo [SDKS-2887]

Swiftpack is being maintained by Petr Pavlik | @ptrpavlik | @swiftpackco | API | Analytics