Developing Applications Using SDKs (SDK-541)

Ping Identity is starting to rebrand all products and courses under the Ping Identity brand. The content will remain the same and our curriculum developers will continue to prioritize courses that need development.


Description

This course is for students who want to learn how to use the SDKs to speed up the integration of JavaScript, Android, and iOS applications, within an access management solution. The course presents key use cases and features of the SDKs.


Note: Revision B of this course is based on version 7 of the Ping Identity Platform (Identity Platform), formerly known as ForgeRock® Identity Platform, and SDK 3.


Target Audiences

The target audiences for this course include:

  • System Integrators
  • System Consultants
  • System Architects
  • Developers of JavaScript applications
  • Developers of native Android applications
  • Developers of native iOS applications


Objectives

Upon completion of this course, you should be able to:

  • Introduce the SDKs, describe how they fit into the Identity Platform, and how they interact with PingAM, formerly known as ForgeRock® Access Management
  • Present the centralized login flow, implement centralized login authentication, and observe device single sign-on (SSO)
  • Present the Embedded Login flow and execute authentication, registration, and self-service journey
  • Increase the security of your application and enhance the user experience with social authentication, passwordless biometric authentication, device profile and location collection and analysis, and multi-factor authentication (MFA) with one-time passwords (OTPs) and push authentication


Prerequisites

The following are the prerequisites for successfully completing this course:

  • Basic knowledge and skills using the Linux and Windows operating systems to complete labs
  • Basic knowledge of HTTP and communications between clients and servers is critical to understanding the interaction between the SDKs and AM
  • Basic knowledge of JSON, JavaScript, REST, and Java
  • Good knowledge of either JavaScript, Android, or iOS application development
  • Attendance on the PingAM Deep Dive (AM-410) course or equivalent knowledge


Duration

3 days

Show details


Course Contents

Chapter 1: Introducing the SDKs

Introduce the SDKs, describe how they fit into the Identity Platform, and how they interact with AM.

Lesson 1: The SDKs and Common Use Cases

Introduce the SDKs and common use cases:

  • Describe the SDKs
  • Explore the role of the SDKs through common use cases
  • Technical overview of the SDKs
  • Using SDK components
  • Interaction between the SDKs and AM

Lesson 2: Mobile Development Environment and Project Quickstart for Android and iOS

Learn how to set up a development environment:

  • Preparing the server
  • iOS Environment and Project Setup
  • Android Environment and Project Setup
  • JavaScript Environment and Project Setup
  • Preface to the exercises
  • Set up an iOS development environment
  • Set up an Android development environment
  • Set up a JavaScript development environment


Chapter 2: Authentication with Centralized Login

Present the centralized login flow, implement centralized login authentication, and observe device SSO.

Lesson 1: Authenticate With Centralized Login

Learn how to use the SDKs with centralized login:

  • Understand the login flow choices
  • Implement centralized login on mobile
  • Implement centralized login in JavaScript
  • Authenticate with centralized login on iOS
  • Authenticate with centralized login on Android
  • Authenticate with centralized login in JavaScript

Lesson 2: (Optional) Observe SSO Between Mobile Apps

Learn how to implement SSO between mobile apps with centralized login:

  • SSO between mobile apps with centralized login


Chapter 3: Working with Embedded Login

Present the Embedded Login flow and execute authentication, registration, and self-service journeys

Lesson 1: Authenticate with Embedded Login

Learn how to use the SDKs with Embedded Login to authenticate:

  • Understand the APIs for Embedded Login
  • Authenticate with embedded login on iOS
  • Authenticate with embedded login on Android
  • Authenticate with embedded login in JavaScript

Lesson 2: Follow Authentication Journeys

Learn how to follow authentication journeys:

  • Respond to Callbacks
  • Respond to Stages
  • Respond to stages on iOS
  • Respond to stages on Android
  • Respond to stages in JavaScript
  • (Optional) Transactional authorization

Lesson 3: Registration and Self-Service Journeys

Learn how to follow registration and self-service journeys:

  • Respond to registration or self-service journeys
  • Implement self-service registration on iOS
  • Implement self-service registration on Android
  • Implement self-service registration in JavaScript
  • Call other journeys / Intercept REST calls
  • Implement self-service password change on iOS
  • Implement self-service password change on Android
  • Implement self-service password change in JavaScript

Lesson 4: Send and Process Verification Emails

Learn how to suspend journey processing and resume after the user followed the resume link sent in email:

  • Suspend the journey and await the user following the resume link
  • Suspend and resume authentication on iOS
  • Suspend and resume authentication on Android
  • Suspend and resume authentication in JavaScript


Chapter 4: Increasing Security and Enhancing User Experience

Increase the security of your application and enhance the user experience with social authentication, passwordless biometric authentication, device profile and location collection and analysis, and MFA with OTPs and push authentication.

Lesson 1: Authenticate with Social Login

Learn how to implement social authentication:

  • Implement social login
  • Login with Google on iOS
  • Login with Google on Android
  • Login with Google in JavaScript

Lesson 2: Authenticate with WebAuthn and Biometrics

Learn how to implement biometric authentication on mobile:

  • Review WebAuthn concepts
  • Implement biometric authentication on mobile
  • Implement WebAuthn on iOS
  • Implement WebAuthn on Android
  • Implement web biometric authentication
  • Implement WebAuthn in JavaScript

Lesson 3: Collect and Validate Device Profiles and Geolocation

Learn how to collect device profile data and geolocation for validation:

  • Configure a user journey to verify and save device profile data
  • Device profile processing in the SDKs
  • Collect device profile data on iOS
  • Implement device profile collection on iOS
  • Collect device profile data on Android
  • Implement device profile collection on Android
  • Collect device profile data in JavaScript
  • Implement device profile collection in JavaScript
  • Analyze device context
  • Implement location-based security
  • Collect location information on iOS, Android or in JavaScript
  • Implement device tampering detection
  • Customize what data is collected
  • Check for device tampering and customize device profile collection on iOS
  • Check for device tampering and customize device profile collection on Android
  • Customize device profile collection in JavaScript

Lesson 4: MFA with Push and OATH on Mobile

Learn how to provide MFA with Push Authentication and Soft Token:

  • Integrate the ForgeRock Authenticator Module in a mobile app
  • Examine using the Authenticator Module on iOS
  • Examine using the Authenticator Module on Android