Software Development Kits (SDKs)
Expose core ForgeRock IAM functionality and enable best practices for rapid integration with Authentication Trees, data collection, token exchange, and security.
What are ForgeRock Software Development Kits?
ForgeRock SDKs enable you to quickly integrate the ForgeRock Identity Platform into your web or mobile apps. There are a number of powerful features in the ForgeRock stack - one of those being our intelligent authentication. We built SDKs to make those authentication trees easy to consume, along with being able to determine the security and location of the device requesting authentication.
What are ForgeRock SDKs?
Software Development Kits (SDKs)
The SDKs use the OAuth 2.0 Auth Code flow with PKCE. ForgeRock has selected this method as the best practice for first-party applications. The SDK automatically handles token exchange for you, and also securely stores the tokens. Token refresh is automatically handled by the SDK so you don’t have to think about it.
Single Sign-On (SSO)
In some scenarios your company may have multiple native applications that customers have installed on their devices. You can use the SDK to seamlessly sign users in to multiple applications on a device. When the customer signs into one application, they are automatically signed into a second application on that device—without having to authenticate again.
Pluggability & Extensibility
The SDK has a modular architecture and is designed with flexibility in mind. Don’t want to use our method for jailbroken detection? No problem! Just plug in your own method, or use a 3rd-party plug-in instead. The other advantage of the SDK's modular design is that you can minimize the footprint of your app by only including those modules that your app absolutely needs.
Device Security Profile
Using the SDK you have the option to collect device profile information to use in your authentication flows. You might use this data to compare a user sign-in to a prior sign-in event. If the device profile has changed too much from the prior event, you can deny the sign-in.
Jailbreak or Root Detection
The iOS and Android SDKs generate a score to determine if a device is jailbroken or rooted. There are a number of factors that go into creating this score. The score ranges from 0 to 1.0, where 0 indicates the device is an emulator.
Device ID & Meta Data
ForgeRock SDKs will automatically generate a device ID for you. You can use the ID with Identity Manager or Access Management to allow your users to manage their devices. For example, you can insert the device ID and associated data into a user’s profile. This lets them view their devices and set the devices as trusted. You can also decide to use a recognized device in an authentication flow to avoid asking a user for another factor.
You can collect Latitude and Longitude information from your users via the Android and iOS SDKs. Apps that use location services must request location permissions from users.
The SDKs have a sample User Interface that can be used for rapid prototyping, or as a reference implementation for building your own UI. Let’s say you want to get an authentication experience in front of some of your users or business stakeholders. You can easily build an authentication journey in the ForgeRock Platform and display the results immediately in your application.