Developer Playground

Overview

Idfyed Playground is a set of instructions, documentation and tools that can be used by an Idfyed customer during evaluation of the services. It is not a complete integration instruction. Using the playground it is possible to develop a web application that uses Idfyed for authentication and identification of users.

Intended Audience

The Idfyed Playground is intended primarily for technically minded persons that need to understand the technical structure of the Idfyed service and how to integrate it in the customer environment.

Contents

API Documentation

A good starting point is to get familiar with the different integration points is through the API documentation. A number of concepts and terms referred to in the remainder of this document are explained in the documentation:

Install the App

To install the app you can either click the icons above in your browser of your device or open the App store or Play Store App on the device and search for Idfyed.

Playground Relying Party

To allow evaluation and practical test of the API and the service a test relying party (RP) has been set up in the production environment. The RP is the fictitious company ACME Inc.

Relying Party Configuration

The playground relying party uses Idfyed for authentication.

OpenID Parameter Value
Customer Id client_id playground
Customer secret N/A LW4eUhQkJfwJGgQU8JCT/g==

Attributes

The playground relying party will request the following information from users logging in:

Attribute Attribute name Comment
Fictitious loyalty number acme_loyaltyNumber Optional - verified
Nickname nickname Mandatory - non-verified
Country c Mandatory - non-verified

Try Login

Using the form at https://login.idfyed.com/test-openid/ a login can be emulated. This webform performs an operation that normally would be done by the application integrating Idfyed for authentication and identification.

By clicking the link above, the login flow can be tested using the playground relying party.

Try Connect

In some scenarios, adding an attribute to a user where the RP decides the value is required. This scenario is called a connect. For example if you join a loyalty program, the RP might want to add the loyalty program number to your Idfyed profile.

The playground RP has been equipped with the possibility to connect the attribute acme_loyaltyNumber using a feature called back-end connect, where the application calls an authenticated back-end channel over REST adding the attribute to the user. User will then be prompted to add the attribute to the Idfyed profile

Using the form at (https://login.idfyed.com/test-rp-mgmt/attributes.jsp) back-end connect can be emulated. The web-form is a simple wrapper for the REST API call that exposes back-end connect API.

This call will notify the user with userid 77063... to add rp_acme_loyaltyNumber to the profile. The userId is fetched from a previous authentication of the user in "Try Login".

This is the preferred way to add and the only way to do remove of user attributes and is also the most user friendly way for connect.

Back-end connect requires a number of parameters seen in the screen dump, below is a description of each. See documentation for more details.

attribute value
application playground
UserID The user id returned when user logs into playground.
action ADD/REMOVE. Note: it is only the acme_loyaltyNumber that can be added and removed, the playground RP is not allowed any other modifications on the user.
attribute(name) acme_loyaltyNumber
attribute(value) loyalty number of your choice
Username playground
password LW4eUhQkJfwJGgQU8JCT/g==

Sample Code

A sample web application that demonstrates the different possibilities exposed by the service.

Platform Repository Features
PHP https://github.com/idfyed/sample-php-app OpenID Connect, EAPI, Front-end connect, back-end connect
node.js / Javascript https://github.com/idfyed/sample-node-app OpenID Connect, EAPI, Front-end connect, back-end connect

You need sample code for a platform not listed? Let us know!

Contact & Feedback

If you have any questions, improvement suggestions or any other reason to talk to us; please don’t hesitate to contact us:

playground@idfyed.com