The Device Flow is an OAuth 2.0 extension that enables devices with no browser or limited input capability to obtain an access token. This is commonly seen on Apple TV apps, or devices like hardware encoders that can stream video to a YouTube channel.
Find the below procedure to create App:
1. Go to Administrator dashboard -> Apps -> “App Settings”.
2. Click “Create New App” button.
3. Click “Create App” button, the app details screen displays
4. Enter app name and click "Device App”
5. Enter App name, for example: Apple Tv (your business name).
6. Enter App logo URL, for example:This logo will appear in several areas, including the list of applications in the Dashboard, as well as things like customized consent forms.
7. Administrator can change the App type from Android Mobile App, to any other app type (IOS Mobile App, Windows Mobile App and Single Page WebApp).
This is where all the basic information about your application such as scope, Hosted page, etc. are entered.
9. Click on the hyperlink to Import scopes from scope groups, as in the below screen, for more information click Scope Groups.
10 . Select hosted page group from the drop down. By default, cidaas provides Hosted Pages.
Enter details of company here.
11. Company Name: Enter details here to store the company name which is to be displayed while using this app.
12. Company Address: Enter company address that is to be displayed while using this app.
13. Website URL: Provide the business site URL.
14. Terms and Conditions URL: This link will be rendered automatically in login/registration pages, if the Terms URL is configured.
In addition to above, cidaas allows you to configure few options for OAuth, Token payloads, social login providers.
These settings should be configured to define OAuth response types and origins
1 . Click on the “Show Advanced Settings” to view a similar screen
2 . From the drop down select response types checkbox (multiple checkbox can be selected)
3 . From the drop down select grant types checkbox (multiple checkbox can be selected)
4 . Enter allowed origins and allowed web origins.
5 . From the drop down select Additional Access Token Fields checkbox (multiple checkbox can be selected)
You can upload or define your consent policy, that you would like to show to your end user. There may be multiple policies that you want to show based on context.
Cidaas provided you a Consent Management framework that allows for this, including feature to maintain multiple versions of same policy.
By default, cidaas has a standard template that is displayed to your end users.
6 . From the drop down select created consent group, as in the below screen
You can manage security settings such as allowed providers, required fields and configuring for 2FA settings here.
7 . From the drop down select allowed providers (multiple checkbox can be selected)
8 . Registration Fields: From the drop down select allowed fields and required fields (multiple checkboxes can be selected) these fields are comes from the enabled registration fields.
Note: what every mentioned on the allowed fields that fields only can display on the registration page if don,t specified allowed fields in app level by default taken enabled regitsrtation fields from the registration setup.
9. While registering new user's must be verify their identity through the SMS or Email based upon the app level administrator can enable this option.
10. Administrator can enable the captcha and password policy in app level.
11. Always ask for 2FA:When this option is enabled at the app level, the end-users will be required to verify their identity using the 2nd authentication factor.
For more information refer Always ask for 2FA
12 . Click “Save” button.
Find the below advanced settings table for reference:
Response Type: The response type specifies the Response Type you want to use. This can be either code or token or ID token.
The client constructs the request URI by adding the following parameters to the query component of the authorization endpoint URI:
cidaas provides the following default Response Types, while creating the App:
Code: The Authorization Code grant type is used by confidential and public clients to exchange an authorization code for an access token. After the user returns to the client via the redirect URL, the application will get the authorization code from the URL and use it to request an access token.
Token: When the response type is specified as "token", the access token is directly issued.
Id_token: Id Token is issued only when the App has OpenID scope. The id_token issued is in the format of JWT token (JSON Web Token) - which is a compact, URL-safe means of representing claims to be transferred between two parties. The claims in a JWT are encoded as a JSON object that is used as the payload of a JSON Web Signature (JWS) structure or as the plaintext of a JSON Web Encryption (JWE) structure, enabling the claims to be digitally signed or integrity protected with a Message. .
Grant Type is the mechanism in which an application can get access token. Cidaas supports several Grant Types of OAuth 2.0 protocol. These are available for use while creating different type of apps (Andriod / iOS / Windows mobile / Web / Client / Device).
cidaas provides the following default Grant Types, while creating the App: urn:ietf:params:oauth:grant-type:device_code.
Device Flow: Set this parameter to urn:ietf:params:oauth:grant-type:device_code if the access token is to be requested with the device code by a preceding authorization request.
|Allowed Web Origins||Use this when you want to embed cidaas login in your web app using iframe. You can enter all the various URLs from where a cidaas login page is shown in an iframe. User can specify multiple valid URLs here, separated by whitespace. By default all domains mentioned in “Redirect URLs” (attribute entered in App settings) is allowed.|
|Additional Access Token Fields||Admin user can specify the additional fields (defined in the Registration setup) that will be appended to the access token. For more information refer Access Token Payload|
|Allowed Providers||Having popular social providers such as Facebook or Google, makes it convenient for end users to use their existing social accounts during login/registration. For more information refer Social Providers|
|Required Fields||The fields defined in the Registration Setup are listed, and the Admin can select the fields that need to be made mandatory at the app level. For more information refer Registration Setup|
13 . Select appropriate roles from the drop down.
14 . Select appropriate cidaas Administrator role from the drop down.
15 . Select appropriate groups from the drop down, as in the below screen,
16 . Click "Save" button, a message window pops up "Apps Saved Successfully".
The JWE (JSON Web Encryption) specification standardizes the way to represent an encrypted content in a JSON-based data structure.
17 . Enable JWE and click “Save” button
Json Web Tokens (JWT) are used to secure the information exchange between the users and the application. To provide more security to the access token the public and private key are defined.
Using a RSA asymmetric key pair, the JWT is signed with the private key and verified with the public key.
Public Key: Which is in the form of encrypted.
Private Key: Which decode the encrypted token.
16 . Once the appropriate App is created, the certificates (Public and Private keys) gets displayed as in the below screen.
App Custom Fields
User can define the custom fields (multiple fields can be defined).
Flow Setting (Beta)
Administrators can configure the business flows at app level using the flow settings.It contains the following flow criteria:
Allow Login With: Administrators can specify the values with which a user can be allowed to login in this field (For e.g., username, mobile, email)
Register with Login Information: When the "Register with Login information" option is enabled, the user gets automatically registered when he opts for Social Login (Using Social providers such as Facebook/ Google etc.) on the Login page. If this option is disabled, when the user tries to login to the application for the first time before registration using Social login, an error message will be displayed. The user will have to then use social login on the registration page or register himself using classical registration.
FDS Enabled: When Administrators enable this option, cidaas FDS detects if the user who tries to login is a legitimate user, based on pre-defined criteria.
Enable Passwordless Auth: Administrators can enable Passwordless authentication at App level
Enable Deduplication: Administrators can enable deduplication at App level. This option ensures that redundant users accounts are not created.
Allow Disposable Email: Administrators can allow user registration using disposable email (i.e. email IDs created by online fake email generators such as firstname.lastname@example.org)
Validate Phone Number: When Administrators enable this option, the user’s phone number is verified at the time of registration.
18 . Click "Save" button, a message window pops up "Apps Saved Successfully".
19 . Once all the mandatory fields are filled, user get the Client ID and Client Secret, as in the below screen
20 . To reveal client secret id, click on the view icon .
21 . To reset client secret id, click on the reset icon , which provides a different client secret id.
22 . The created app gets displayed in “Your Apps”
23 . Cancel button redirects to app types screen.
24 . click the chart icon button that will shows the app usage chart it displays total number of login and registration, failure user’s counts for the particular date and time.