Only this pageAll pages
Powered by GitBook
1 of 95

Archive

Introduction to Cymmetri Cloud 2.0

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Administration

Loading...

My Workspace

Loading...

Loading...

Loading...

How to use the My Workspace

Loading...

Loading...

Loading...

Loading...

Loading...

Application Management

Loading...

Loading...

Getting Started

Loading...

Loading...

Loading...

Loading...

SSO How to

Loading...

Loading...

Loading...

Loading...

Provisioning How to

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Reconciliation How to

Loading...

Managing Users and Groups

Setting up Users and Groups

Loading...

Loading...

Loading...

Loading...

Loading...

Common Features

Features used throughout the Cymmetri Platform

Loading...

Loading...

Loading...

Personalization

How to configure your tenant and personalize it

Loading...

Loading...

Loading...

Loading...

Loading...

Authentication

Identity Federation

Loading...

Governance

Access Certification

Loading...

Additional Tools

Miscellanous Tools and Utilities

Loading...

Privileged Access Management

PAM Administration

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Forgot Password & Unlock Account

Forgot Password & Unlock Account

Cymmetri user may need assistance to Unlock Account in case their ID is locked for access. In the case where user has forgot the password, the user can self reset to gain access to Cymmetri Cloud.

Steps to Reset Password

Step 1 - Click on the Forgot Password / Unlock Account link.

Step 2 - Provide the Username in the prompt and click Next button.

Step 3 - Select the appropriate MFA option for verification

The available options visible to user depend on the MFA options enabled by the Cymmetri Administrator and the options registered by the user.

If MFA option is not registered, the user must contact the Cymmetri Administrator for further assistance.

Step 4 - Verification by MFA

Step 5 - Select Reset Password option

Step 6 - Provide password

Step 7 - Login with password reset successfully

Steps to Unlock Account

Step 1 - Click on the Forgot Password / Unlock Account link.

Step 2 - Provide the Username in the prompt and click Next button.

Step 3 - Select the appropriate MFA option for verification

The available options visible to user depend on the MFA options enabled by the Cymmetri Administrator and the options registered by the user.

If MFA option is not registered, the user must contact the Cymmetri Administrator for further assistance.

Step 4 - Verification by MFA

Step 5 - Select Unlock Account option

Step 6 - Login after account unlocked successfully

Help

FAQ

Cymmetri Error codes

A consolidated list of all known Cymmetri error codes and their summary understanding

Error Code
Error helper text

USRSRVC.LAST_DATE_REACHED

Application's request end date is greater than the user's end date.

USRSRVC.MISSING_DATES

Incorrect dates

USRSRVC.EXPIRED_TIME_BOUND

Access request duration has ended

REGSRVC.UNKNOWN

Error. Please try again later or contact Cymmetri Administrator.

REGSRVC.USER_NOT_FOUND

User not found.

REGSRVC.INVALID_TOKEN

Token expired. Try again.

REGSRVG.OTP_EXPIRED

OTP expired. Please resend and try again.

REGSRVC.OTP_LIMIT_EXCEED

Otp limit exceeded.

REGSRVC.INVALID_OTP

OTP does not match. Please check & try again

REGSRVC.INVALID_ARGUMENTS

Error. Please correct input and try again.

REGSRVC.INVALID_DOMAIN

Invalid Domain. Please try again.

REGSRVC.INVALID_CREDENTIALS

Invalid Credentials. Please try again.

REGSRVC.TERMS_AND_CONDITIONS_NOT_FOUND

Invalid Terms & Conditions. Please try again.

REGSRVC.INVALID_ACCOUNT_VERIFICATION_TOKEN

Invalid request. Contact Cymmetri administrator.

REGSRVC.DATA_IS_NOT_VALID

Invalid data. Please try again.

REGSRVC.PASSWORD_NOT_VALID

Invalid password. Please try again

REGSRVC.EMAIL_EXISTS

Duplicate Email Address. Please try again.

REGSRVC.DOMAIN_EXISTS

Duplicate Domain.

REGSRVC.DB_CONFIG_EXISTS

Database already exists. Contact Cymmetri administrator.

REGSRVC.USER_ALREADY_ACTIVE

User status is active. Contact Cymmetri administrator.

USRSRVC.MANAGER_NOT_FOUND

No Manager Found

USRSRVC.UNSUPPORTED_FILE_TYPE

Unsupported File Type

USRSRVC.UNKNOWN

Error. Please try again later or contact Cymmetri Administrator.

USRSRVC.INVALID_ARGUMENTS

Error. Please correct input and try again.

USRSRVC.NONUNIQUE_GROUPNAME

Group name already exists. Please try again.

USRSRVC.GROUPTYPE_NOT_FOUND

Group type not found. Contact Cymmetri administrator.

USRSRVC.OU_NOT_FOUND

Organization Unit not found. Please try again.

USRSRVC.PARENTGROUP_NOT_FOUND

Parent Group not found. Please try again.

USRSRVC.GROUP_NOT_FOUND

Group not found. Please try again.

USRSRVC.USER_NOT_FOUND

User not found. Please try again.

USRSRVC.CYCLIC_UPDATE

Operation not allowed for current input.

USRSRVC.INHERITED_GROUP

Operation not allowed for current input.

USRSRVC.USERTYPE_NOT_FOUND

User type not found. Please try again.

USRSRVC.EXISTING_MOBILE

User mobile number in use. Please try again.

USRSRVC.EXISTING_EMAIL

User email address in use. Please try again.

USRSRVC.DEPARTMENT_NOT_FOUND

Department not found. Please try again.

USRSRVC.DESIGNATION_NOT_FOUND

Designation not found. Please try again.

USRSRVC.COUNTRY_NOT_FOUND

Country not found. Please try again.

USRSRVC.EXISTING_LOGIN

User Login ID in use. Please try again.

USRSRVC.APPLICATION_NOT_FOUND

Application not found. Please try again.

USRSRVC.APPLICATION_ROLE_NOT_FOUND

Application role not found. Please try again.

PROVSRVC.CYMMETRI_LOGIN_FIELD_NOT_CONFIGURED

Please configure Cymmetri Login field for Policy Mapping.

PROVSRVC.APPLICATION_TEST_FAILED

Provision Configuration failed.

USRSRVC.USER_NOT_PROVISIONED

User not provisioned. Please try again.

USRSRVC.CHILD_GROUP_FOUND

Cannot Delete as Child group found.

USRSRVC.GROUP_HAS_ASSIGNED_APPS

Group has assigned applications. Remove and try again.

USRSRVC.USER_ASSIGNED_GROUP

Cannot delete as User assigned to group.

USRSRVC.INACTIVE_USER

Inactive User cannot perform this action.

USRSRVC.INVALID_MANAGER

Invalid manager.

USRSRVC.MIN_ORG_ADMIN_RULE_VIOLATION

Admin role cannot be removed for this user.

USRSRVC.USER_ROLE_MAPPING_EXISTS

Role Already Exists.

USRSRVC.APPLICATION_ROLE_ALREADY_ASSIGNED

Application role is already assigned.

USRSRVC.APPLICATION_ALREADY_ASSIGNED

Application is already assigned.

USRSRVC.USER_ROLE_MAPPING_NOT_EXISTS

User role mapping does not exists.

USRSRVC.CANNOT_REMOVE_PROVISIONED_APPLICATION

Cannot remove already provisioned application.

USRSRVC.EMPTY_FILE

Empty file uploaded.

USRSRVC.SELF_STATUS_CHANGE_NOT_ALLOWED

This user cannot be deleted.

USRSRVC.MANAGER_ASSIGNMENT_REJECTED

Error. The manager assignment is invalid.

USRSRVC.INVALID_ENDDATE

The end date should be greater than start date.

USRSRVC.SELF_ROLE_CHANGE_NOT_ALLOWED

Self role change is not allowed.

AUTHSRVC.ACCESS_DENIED

Invalid Credentials.

AUTHSRVC.TENANT_EXPIRED

Free trial expired. Please contact Cymmetri administrator.

AUTHSRVC.UNKNOWN

Please contact system administrator.

AUTHSRVC.INVALID_TOKEN

Token is invalid.

AUTHSRVC.USER_NOT_FOUND

User not found.

AUTHSRVC.CANT_SET_FALSE_DEFAULT_PASSWORD_POLICY

Default password policy cannot be false.

AUTHSRVC.CONNECTION_FAILED

Connection failed.

AUTHSRVC.CANT_DELETE_DEFAULT_PASSWORD_POLICY

Cannot delete default password policy.

AUTHSRVC.INVALID_ARGUMENTS

Invalid argument.

AUTHSRVC.INVALID_AUTH_POLICY_CONFIG

Invalid auth policy config.

AUTHSRVC.ACCESS_DENIED_TOKEN

Session expired. Please login again

AUTHSRVC.NON_REMOVABLE_REFERENCED_ENTITY

Cannot modify IDP configuration till active under Authentication Policy.

AUTHSRVC.PASSWORD_POLICY_NAME_ALRAEDY_EXISTS

Password policy name already exists.

AUTHSRVC.DEFAULT_POLICY_UPDATE_NOT_ALLOWED

Default password policy update not allowed.

AUTHSRVC.PASSWORD_COMPOSITION_RULE_VIOLATION

Password provided does not match the required guidelines.

AUTHSRVC.MOBILE_NOT_FOUND

Mobile number is not registered

AUTHSRVC.ALREADY_EXISTS

Name already exist. Please enter unique name.

MFASRVC.UNKNOWN

Error. Please try again.

MFASRVC.USER_NOT_FOUND

User not found. Please try again.

MFASRVC.ALREADY_SENT_SMS_OTP

SMS OTP already sent.

MFASRVC.INVALID_SMS_OTP

Invalid SMS OTP provided.

MFASRVC.RESEND_COUNT_EXCEED

Maximum resend attempt reached.

MFASRVC.PUSH_NOTIFICATION_FAILED

Failed to send the push notification. Please try again later or contact Cymmetri Administrator.

MFASRVC.MFA_CONFIG_NOT_FOUND

Multi Factor Authentication configuration not found.

MFASRVC.INVALID_ARGUMENTS

Error. Invalid request.

MFASRVC.QUESTION_NOT_FOUND

Question not found.

MFASRVC.DUPLICATE_QUESTION

Question field is duplicate. Please try again.

MFASRVC.INCORRECT_ANSWER

Answer field is incorrect. Please try again.

MFASRVC.INVALID_USERID

Invalid User. Please try again.

MFASRVC.INVALID_QUESTIONID

Question is invalid. Please try again.

MFASRVC.USER_NOT_REGISTERED

User is not registered for TOTP/Push Authentication

MFASRVC.EMPTY_QUESTION

Question field is empty. Please try again.

MFASRVC.FAILED_MINIMUM_CORRECT_ANSWER

Please provide correct answer for each question.

MFASRVC.INVALID_TOTP

Invalid Time based OTP provided.

MFASRVC.INVALID_ANSWER

Answer field is invalid. Please try again.

MFASRVC.QUESTION_NOT_REGISTERED

Question is not registered.

MFASRVC.NON_REMOVABLE_QUESTION

Question in use and cannot be removed.

MFASRVC.USER_RESPONSE_PENDING

User response is pending.

MFASRVC.USER_DENIED_ACCESS

User denied access.

WKFLSRVC.UNKNOWN

Please contact system Administrator

WKFLSRVC.WORKFLOW_NOT_FOUND

No workflow avaliable

WKFLSRVC.INVALID_ARGUMENTS

Please check input and try again.

WKFLSRVC.INVALID_LEVEL

Worklow Config issue

WKFLSRVC.EXCEEDED_REPORTING_MANAGER

Can not more than reporting manager

WKFLSRVC.WORKFLOW_SETUP_NOT_FOUND

No workflow config avaliable

WKFLSRVC.REQUESTOR_NOT_FOUND

Requestor not found in the system.

WKFLSRVC.WORKFLOW_IN_PROGESS

Request is pending for approval.

WKFLSRVC.REPORTING_MANAGER_NOT_FOUND

Reporting manager not mapped to the user.

WKFLSRVC.LEVEL_NOT_IN_RANGE

Workflow level is not in range.

WKFLSRVC.WORKFLOW_SETUP_ALREADY_EXISTS

Workflow setup already exists.

WKFLSRVC.COMMON_REQ_ASSG_ID

Request for approval has gone to concerned approval manager.

WKFLSRVC.SAME_REQUESTOR_ASSIGNEE

Workflow cannot be assigned to same user.

SSOCONFIGSRVC.UNKNOWN

Error. Please try again.

SSOCONFIGSRVC.SSO_CONFIG_NOT_FOUND

SSO config not found.

SSOCONFIGSRVC.SAML_CONFIG_NOT_FOUND

Saml config not found.

SSOCONFIGSRVC.OPENID_CLIENT_NOT_FOUND

OpenID config not found.

SSOCONFIGSRVC.DUPLICATE_OPENID_CLIENT_ID

Duplicate OpenID Client ID.

SSOCONFIGSRVC.API_CONFIG_NOT_FOUND

API config not found.

SSOCONFIGSRVC.INVALID_ARGUMENTS

Invalid Arguments.

SAMLEXTIDPCONFIGSRVC.SERVICE_PROVIDER_WITH_NAME_EXISTS

Service Provider with same name already exists.

UTILSRVC.UNKNOWN

Error. Please try again.

UTILSRVC.INVALID_ARGUMENTS

Error. Please correct input and try again.

UTILSRVC.CONFIGURATION_EXIST

Hook already present.

UTILSRVC.ALREADY_EXISTS

Hook already present.

UTILSRVC.META_ATTRIBUTE_EXISTS

Name/Key or Value already exist.

UTILSRVC.MODULES_ENQUIRY_EXIST

Sales team is working on your request. We will get back to you soon.

UTILSRVC.SCRIPT_CUSTOM_ERROR-MOBILEALREADYEXIST

Mobile number already in use

UTILSRVC.SCRIPT_CUSTOM_ERROR-EMAILALREADYEXIST

Email already in use

UTILSRVC.WEBHOOK_CALL_FAILED

Webhook test failed.

PROVSRVC.UNKNOWN

Error. Please try again later or contact Cymmetri Administrator.

PROVSRVC.USER_NOT_FOUND

User not found.

PROVSRVC.INVALID_ARGUMENTS

Error. Please correct input and try again.

PROVSRVC.APPLICATION_NOT_FOUND

Application not found. Please try again.

PROVSRVC.INVALID_USER_ACTION

User action not allowed. Please check configuration.

PROVSRVC.INVALID_GROUP_ACTION

Group action not allowed. Please check configuration.

PROVSRVC.INVALID_ROLE_ACTION

Role action not allowed. Please check configuration.

PROVSRVC.INAVLID_ACTION

Error. Please try again.

PROVSRVC.UID_NOT_FOUND

Record not found. Please try again.

PROVSRVC.Empty_Role_Id

Role not provided. Please try again.

PROVSRVC.Duplicate_GroupID

Duplicate Group association.

PROVSRVC.Invalid_GroupId

Invalid Group association.

PROVSRVC.CONNECTOR_NOT_FOUND

Connector not available. Please contact Cymmetri administrator.

PROVSRVC.UNSUPPORTED_OPERATION

Operation not supported.

PROVSRVC.APPLICATION_ALREADY_EXISTS

Application already exists.

PROVSRVC.INVALID_POLICYATTRIBUTE_ID

Invalid Policy configuration. Please try again.

PROVSRVC.DUPLICATE_POLICYATTRIBUTE

Duplicate Policy attribute selected.

PROVSRVC.INVALID_POLICY_MAP

Invalid Policy map.

PROVSRVC.INVALID_MASTER_AAPPLICATION_Id

Invalid master application reference.

PROVSRVC.NO_MAPPING_FOUND

Policy map not found.

PROVSRVC.DUPLICATE_POLICY_MAPPING

Duplicate Policy mapping.

PROVSRVC.INAVLID_POLICYATTRIBUTE_APPLICATION

Invalid Policy association. Please try again.

PROVSRVC.PROVISIONING_NOT_ENABLE

Provisioning not enable

PROVSRVC.DUPLICATE_ROLE

Role ID in use. Please try again.

PROVSRVC.DUPPLICATE_NAME

Name already in use.

RULESRVC.UNKNOWN

Error. Please try again.

RULESRVC.RULE_NOT_FOUND

Rule not found.

RULESRVC.RULE_CONDITION_NOT_FOUND

Rule condition not found.

RULESRVC.RULE_ACTION_GROUP_NOT_FOUND

No group associated with rule. Please try again.

RULESRVC.NON_REMOVABLE_REFERENCED_ENTITY

Cannot be modified as entity in use.

RULESRVC.ALRAEDY_EXISTS

Rule already exists.

RULESRVC.MULTIPLE_ZONES_FOUND

Multiple zones found.

RULESRVC.ZONE_NOT_FOUND

Zone not found.

RULESRVC.INVALID_ARGUMENTS

Error. Please try again.

RULESRVC.DEFAULT_RULE_NOT_FOUND

Default rule not found.

IGSRVC.UNKNOWN

Error. Please try again.

IGSRVC.INVALID_JWT

Error. Invalid JWT token.

IGSRVC.CAMPAIGN_COMPLETION_PERIOD_EXCEED

Error. Campaign Completion Period Exceeded.

IGSRVC.CAMPAIGN_STAGE_NOT_FOUND

Error. Campaign Stage Not Found.

IGSRVC.CAMPAIGN_SCOPE_NOT_FOUND

Error. Campaign Scope Not Found.

IGSRVC.CAMPAIGN_ALREADY_IN_DRAFT_STATE

Error. Campaign Already In Draft State.

IGSRVC.CAMPAIGN_ALREADY_IN_PUBLISHED_STATE

Error. Campaign Already In Published State.

IGSRVC.CAMPAIGN_EXECUTION_IN_PROGRESS

Error. Campaign Execution in Progress.

IGSRVC.CAMPAIGN_ASSIGNMENT_NOT_FOUND

Error. Campaign Assignment Not Found.

IGSRVC.CAMPAIGN_HISTORY_NOT_FOUND

Error. Campaign History Not Found.

IGSRVC.UNABLE_TO_PROCESS_RESPONSE

Error. Unable To Process Response.

IGSRVC.CAMPAIGN_ASSIGNMENT_APPLICATION_NOT_FOUND

Error. Campaign Assignment Application Not Found.

IGSRVC.CAMPAIGN_ASSIGNMENT_APPLICATION_ROLE_NOT_FOUND

Error. Campaign Assignment Application Role Not Found.

IGSRVC.APP_ROLE_ALREADY_PROCEED

Error. App Role Already Proceeded.

IGSRVC.INACTIVE_USER_FOUND

Error. Inactive User Found.

IGSRVC.NO_ACTIVE_EXECUTION_FOUND

Error. No Active Execution Found.

IGSRVC.INVALID_CRON_EXPRESSION

Error. Invalid Cron Expression.

IGSRVC.DUPLICATE_CAMPAIGNNAME

Error. Duplicate Campaign Name.

IGSRVC.CAMPAIGN_NOT_FOUND

Campaign not found.

IGSRVC.INVALID_ARGUMENTS

Error. Please correct input and try again.

IGSRVC.CAMPAIGN_STATE_STARTED

Error. Campaign State Already Started.

IGSRVC.STAGE_LIMIT_EXCEED

Error. Stage Limit Exceeded.

IGSRVC.DUPLICATE_STAGE

Error. Duplicate Stage.

IGSRVC.ASSIGNMENT_ALREADY_PROCEED

Error. Assignment Already Proceeded.

IGSRVC.INVALID_CAMPAIGN_ITERATION

Invalid Campaign Iteration.

IGSRVC.INVALID_CAMPAIGN_MANAGER_ASSIGNEE

Campaign manager or assignee configured in stages are not valid.

IGSRVC.INVALID_CAMPAIGN_STATUS

Campaign execution in progress

IGSRVC.USER_WITH_NO_VALID_APPLICATION

No valid assignments found

IGSRVC.CONNECTION_FAILED

Please check your internet connection.

IGSRVC.ALRAEDY_EXISTS

Record already exists.

IGSRVC.FORBIDDEN

Please contact system administrator.

IGSRVC.UNAUTHORIZED

Please contact system administrator.

IGPROCESS.UNKNOWN

Error. Please try again.

IGPROCESS.INVALID_ARGUMENTS

Error. Please correct input and try again.

IGPROCESS.CAMPAIGN_NOT_FOUND

Error. Campaign Not Found.

IGPROCESS.NO_ACTIVE_EXECUTION_FOUND

Error. No Active Execution Found.

IGPROCESS.CAMPAIGN_HISTORY_NOT_FOUND

Error. Campaign History Not Found.

IGPROCESS.INVALID_CAMPAIGN_ITERATION

Error. Invalid Campaign Iteration.

IGPROCESS.CAMPAIGN_EXECUTION_IN_PROGRESS

Error. Campaign Execution In Progress.

IGPROCESS.MATCHING_ASSIGNMENTS_NOT_FOUND

Error. Matching Assignments Not Found.

SCHEDULER.UNKNOWN

Error. Please try again.

SCHEDULER.TASK_NOT_FOUND

Error. Task Not Found.

SCHEDULER.TASK_NOT_ACTIVE

Error. Task Not Active.

SCHEDULER.INVALID_ARGUMENTS

Error. Please correct input and try again.

SCHEDULER.INVALID_START_DATE

Error. Invalid Start Date.

SCHEDULER.TENANT_NOT_FOUND

Error. Tenant Not Found.

SCHEDULER.UPDATE_NOT_SUPPORTED

Error. Update Is Not Supported.

SCHEDULER.CRON_REPETITION_BELOW_ALLOWED_LIMIT

Error. Cron Repetition Is Below Allowed Limit.

SCHEDULER.INVALID_CRON_EXPRESSION

Invalid Cron Expression.

SODSRVC.ALREADY_EXISTS

Error. Value Already Exists.

SODSRVC.INVALID_ARGUMENTS

Error. Please correct the input and try again.

SAMLEXTIDPCONFIGSRVC.UNKNOWN

Error. Please try again.

SAMLEXTIDPCONFIGSRVC.IDENTITY_PROVIDER_WITH_NAME_EXISTS

Idenity Provider with same name already exist. Please enter unique name.

SAMLEXTIDPCONFIGSRVC.NON_REMOVABLE_REFERENCED_ENTITY

Cannot modify or remove service provider till active under external identity policy or rule.

SAMLEXTIDPCONFIGSRVC.INVALID_ARGUMENTS

Please correct the input and try again.

SAMLEXTIDPCONFIGSRVC.CERTIFICATE_PARSING_ERROR

Error occured while parsing certificate.

SAMLEXTIDPCONFIGSRVC.AUTH_TYPE_CANNOT_BE_UPDATED

Identity provider type cannot be updated.

SAMLEXTIDPCONFIGSRVC.CONNECTION_FAILED

Please check your internet connection.

SAMLEXTIDPCONFIGSRVC.IDP_CONFIGURATION_NOT_FOUND

Identity provider configuration not found.

SAMLEXTIDPCONFIGSRVC.MULTIPLE_IDP_CONFIGURATION_FOUND

Multiple identity provider configuration found.

SAMLEXTIDPCONFIGSRVC.NAME_ID_POLICY_NAME_ID_VALUE_MISMATCH

NameIdPolicy and NameIdValue does not match.

SAMLEXTIDPCONFIGSRVC.SP_CONFIGURATION_NOT_FOUND

Service provider configuration not found.

SAMLEXTIDPCONFIGSRVC.UNAUTHORIZED

Please contact system administrator.

SAMLEXTIDPCONFIGSRVC.SERVICE_PROVIDER_NOT_FOUND

Service provider not found.

SAMLEXTIDPCONFIGSRVC.CERTIFICATE_NOT_FOUND

Certificate not found.

SAMLEXTIDPCONFIGSRVC.EAMIL_EXISTS

Email already exists.

SAMLEXTIDPCONFIGSRVC.CUSTOM_IDENTITY_TYPE_MUST_HAVE_ID

Custom identity type must have ID.

SAMLEXTIDPCONFIGSRVC.INACTIVE_CONFIGURATION_FOUND

Inactive configuration found.

SAMLEXTIDPCONFIGSRVC.INVALID_IDP_CONFIGURED

Invalid IDP configured.

SAMLEXTIDPCONFIGSRVC.NO_MAPPING_FOUND

No mapping found.

SAMLEXTIDPCONFIGSRVC.INVALID_POLICY_MAPPING

Invalid policy mapping.

SAMLEXTIDPCONFIGSRVC.POLICY_MAP_REQUIRED_FIELD_NOT_FOUND

Policy map required field not found.

SAMLEXTIDPCONFIGSRVC.MANDATORY_FIELD_EXCEPTION

Mandatory field exception.

SAMLEXTIDPCONFIGSRVC.MAPPING_ALREADY_EXISTS

Mapping already exists.

SAMLEXTIDPCONFIGSRVC.JIT_CONFIGURATION_NOT_FOUND

JIT configuration not found.

USRSRVC.INVALID_EXTENSION_ENDDATE

Extended end date should be less than current access end date.

MFASRVC.SMS_OTP_EXPIRED

SMS OTP expired.

MFASRVC.SHORT_ANSWER_LENGTH

Answer length is short.

MFASRVC.DEVICE_INFO_NOT_FOUND

Please scan the QR code.

AUTHSRVC.USER_LOCKED

User locked.

AUTHSRVC.EMAIL_NOT_FOUND

Email not found.

AUTHSRVC.INVALID_USER_ACCOUNT_STATE

Your account is expired/inactive. Please contact Cymmetri Administrator

AUTHSRVC.INVALID_DATE

Start/End date should be greater than cureent date and time.

AUTHSRVC.DELEGATE_CONSENT_NOT_FOUND

Error. Delegate consent not found.

AUTHSRVC.DELEGATE_USER_NOT_FOUND

Error. User doesn't have delegation access.

AUTHSRVC.NO_OPTION_AVAILABLE

Please contact Cymmetri Administrator for Password Reset.

AUTHSRVC.DELEGATION_DEACTIVATE

Error. Delegation is inactive.

AUTHSRVC.PASSWORD_EXPIRED

Your password has expired

PROVSRVC.UNSUPPORTED_DELEGETE_MFA_SETUP

Delegatee cant setup mfa for application having additional authentication

SLFSRVC.EXISITNG_APP_IN_TAG_FOUND

Application already available in tag.

AD-ADAPTER.FAILED_TO_PWD_CHANGE

Password change failed.

AUTHSRVC.INVALID_CONFIG

Invalid config for authentication policy or rule

PROVSRVC.UNAUTHORIZED

Unauthorized access.

REGSRVC.UNAUTHORIZED

Unauthorized access.

MFASRVC.INVALID_MFA_OTP_CONFIG

Invalid Otp config

MFASRVC.EMAIL_NOT_FOUND

Email not registered

MFASRVC.MOBILE_NOT_FOUND

Mobile not registered

MFASRVC.EMAIL_MOBILE_NOT_FOUND

Mobile or email not registered

SLFSRVC.EXISITNG_USER_TAG_FOUND

Tag with same name already exists

SLFSRVC.IMAGE_MAXSIZE_EXCEEDED

Maximum limit for file size exceeded.

REPORT.CONNECTION_FAILED

Failed to send report.

SOME_ERROR_OCCURRED_WORKING_ON_IT

Please contact cymmetri administrator.

INVALID_IDENTITY_PROVIDER_STATUS

Invalid Identity Provider Status. Please contact cymmetri administrator.

INVALID_ARGUMENTS

Please correct Input and try again. Please contact cymmetri administrator.

INVALID_SERVICE_PROVIDER_STATUS

Invalid Service Provider Status. Please contact cymmetri administrator.

MANDATORY_FIELD_EXCEPTION

Mandatory Field is Missing. Please contact cymmetri administrator.

TENANT_OR_HOST_NOT_RECEIVED_FROM_NGINX

Please contact cymmetri administrator.

TENANT_OR_HOST_PROTO_NOT_RECEIVED_FROM_NGINX

Please contact cymmetri administrator.

SOME_IMPERSONATE_ACCESS

Unauthorized Access. Please contact cymmetri administrator.

SERVICE_PROVIDER_INBOUND_MESSAGE_ERROR

Invalid SAML Message Received. Please contact cymmetri administrator.

INVALID_SAML_RESPONSE_ASSERTION_VERSION

Invalid SAML Response Assertion version. Please contact cymmetri administrator.

INVALID_SAML_RESPONSE_ISSUE_INSTANT

Invalid SAML Response Issue. Please contact cymmetri administrator.

INVALID_SAML_RESPONSE_STATUS

Invalid SAML Response Status. Please contact cymmetri administrator.

INVALID_SAML_RESPONSE_STATUS_REQUESTER_URI

Invalid SAML Response Status Requester URI. Please contact cymmetri administrator.

INVALID_SAML_RESPONSE_STATUS_RESPONDER_URI

Invalid SAML Response Status Response URI. Please contact cymmetri administrator.

INVALID_SAML_RESPONSE_STATUS_VERSION_MISMATCH_URL

Invalid SAML Response Status Version Mismatch URI. Please contact cymmetri administrator.

INVALID_SAML_RESPONSE

Invalid SAML Response. Please contact cymmetri administrator.

INVALID_SAML_RESPONSE_DESTINATION

Invalid SAML Response Destination. Please contact cymmetri administrator.

INVALID_SAML_RESPONSE_VERSION_OR_ASSERTION_VERSION

Invalid SAML Response Version or Assertion Version. Please contact cymmetri administrator.

INVALID_SAML_RESPONSE_ASSERTION_SUBJECT

Invalid SAML Response Assertion Subject. Please contact cymmetri administrator.

INVALID_SAML_RESPONSE_ASSERTION_SUBJECT_NAMEID

Invalid SAML Response Assertion Subject NameId. Please contact cymmetri administrator.

INVALID_SAML_RESPONSE_ASSERTION_ISSUER

Invalid SAML Response Assertion Issuer. Please contact cymmetri administrator.

INVALID_SAML_RESPONSE_ASSERTION_CONDITION_AUDIENCE

Invalid SAML Response Assertion Condition Audience. Please contact cymmetri administrator.

INVALID_SAML_RESPONSE_ASSERTION_AUTHNSTATEMENT

Invalid SAML Response Assertion AuthNStatement. Please contact cymmetri administrator.

INVALID_SAML_RESPONSE_ASSERTION_ATTRIBUTE

Invalid SAML Response Assertion Attribute. Please contact cymmetri administrator.

MULTIPLE_ASSERTIONS_IN_RESPONSE_NOT_SUPPORTED

Multiple Assertion in Response Not Supported. Please contact cymmetri administrator.

INVALID_SAML_RESPONSE_ASSERTION_SIGNATURE

Invalid SAML Response Assertion Signature. Please contact cymmetri administrator.

INVALID_SAML_RESPONSE_SIGNATURE

Invalid SAML Response Signature. Please contact cymmetri administrator.

INVALID_SAML_RESPONSE_ASSERTION_CONDITION

Invalid SAML Response Assertion Condition. Please contact cymmetri administrator.

INVALID_SAML_RESPONSE_ASSERTION

Invalid SAML Response Assertion. Please contact cymmetri administrator.

INVALID_SAML_RESPONSE_ISSUER

Invalid SAML Response Issuer. Please contact cymmetri administrator.

IDP_CONFIGURATION_NOT_FOUND

Idp Configuration Not Found. Please contact cymmetri administrator.

SP_ID_IDP_ID_LOGIN_EMPTY

Service provider or identity provider login not provided. Please contact cymmetri administrator.

SERVICE_PROVIDER_CONFIGURATION_NOT_FOUND

Service Provider Configuration Not Found. Please contact cymmetri administrator.

ERROR_BUILDING_SAML_AUTHN_REQUEST

Failed To Build SAML Authentication Request. Please contact cymmetri administrator.

ERROR_PERSISTING_SAML_AUTHN_REQUEST

Failed To Persist SAML Authentication Request. Please contact cymmetri administrator.

ERROR_SENDING_SAML_AUTHN_REQUEST

Failed to Send SAML Authentication Request. Please contact cymmetri administrator.

USER_EMAIL_ADDRESS_NOT_PRESENT

User Email Not Found. Please contact cymmetri administrator.

USER_LOGIN_NOT_PRESENT

User Login Not Found. Please contact cymmetri administrator.

EMAIL_ADDRESS_DOES_NOT_MATCH

Email Address does not matching. Please contact cymmetri administrator.

LOGIN_DOES_NOT_MATCH

Login does not match. Please contact cymmetri administrator.

USER_NOT_AVAILABLE

User is not present. Please contact cymmetri administrator.

SERVICE_PROVIDER_NOT_FOUND

Service provider is not found. Please contact cymmetri administrator.

UNAUTHORIZED_ACCESS

Unauthorized Access. Please contact cymmetri administrator.

UNAUTHORIZED

Unauthorized Access. Please contact cymmetri administrator.

USER_NOT_FOUND

User Not found. Please contact cymmetri administrator.

DATA_NOT_PRESENT

Application configuration does not exist. Please contact cymmetri administrator.

ARGUMENT_IS_REQUIRED

Please correct Input and try again. Please contact cymmetri administrator.

APPLICATION_CONFIG_EXISTS

Application Configuration already exists. Please contact cymmetri administrator.

APPLICATION_CONFIG_NOT_PRESENT

Application configuration does not exists. Please contact cymmetri administrator.

INVALID_TOKEN

Invalid token Please contact cymmetri administrator.

TENANT_NOT_FOUND

Tenant detail not availaible. Please contact cymmetri administrator.

INVALID_APPLICATION_ID

Invalid application id. Please contact cymmetri administrator.

APPLICATION_WITH_ISSUER_NOT_FOUND

Application configuration with issuer not found. Please contact cymmetri administrator.

EXCEPTION_OCCURED_WITH_TENANT_JKS

Please contact cymmetri administrator.

EXCEPTION_OCCURED_WITH_TENANT_JKS_KEY_GENERATE

Please contact cymmetri administrator.

APPLICATION_NOT_ASSIGNED_TO_USER

Application is not assigned to the user. Please contact cymmetri administrator.

USER_NOT_ASSIGNED_SERVICE_PROVIDER_ERROR

User is not assigned to the service provider. Please contact cymmetri administrator.

SOMETHING_WENT_WRONG

Please contact cymmetri administrator.

SERVICE_PROVIDER_NAMEIDVALUE_MISMATCH_ERROR

Service provider nameId value does not match with configured application. Please contact cymmetri administrator.

SERVICE_PROVIDER_NAMEID_MISMATCH_ERROR

Service provider nameId value does not match with configured application. Please contact cymmetri administrator.

TENANT_HOST_NOT_FOUND

Please contact cymmetri administrator.

APPLICATION_CONFIG_NOT_FOUND

Application Configuration not found. Please contact cymmetri administrator.

SAMLREQUEST_NOT_PRESENT_IN_REQUEST

SAML Request is not present in Request. Please contact cymmetri administrator.

CONFIGURED_REQUEST_ISSUER_AND_SAML_REQUEST_NOT_ISSUER_NOT_MATCH

Application issuer Configuration does not match. Please contact cymmetri administrator.

INVALID_REQUEST_ISSUER

Invalid Request Issuer. Please contact cymmetri administrator.

IDENTITY_TOKEN_SAML_REQUEST_NOT_FOUND

Invalid Identity SAML Request Token. Please contact cymmetri administrator.

IDENTITY_REFRESH_SAML_REQUEST_NOT_FOUND

Invalid Refresh SAML Request Token. Please contact cymmetri administrator.

USER_NOT_ASSIGNED_TO_APPLICATION

User is not associated with the application. Please contact cymmetri administrator.

SSO_ERROR_SENDING_SAML_RESPONSE

Error Sending SAML Response. Please contact cymmetri administrator.

SSO_CONFIG_NOT_FOUND_APPLICATION_ID

SSO configuration not found for application. Please contact cymmetri administrator.

SSO_USER_NOT_FOUND

SSO user found for application. Please contact cymmetri administrator.

INTERNAL_SERVER_ERROR

Please contact cymmetri administrator.

IDP_SSO_JKS_MANAGER_FAILED

Please contact cymmetri administrator.

IDP_SSO_CUSTOM_JKS_FAILED

Please contact cymmetri administrator.

IDP_SSO_FAILED

SSO failed for identity provider. Please contact cymmetri administrator.

SERVICE_PROVIDER_SESSION_NOT_FOUND

Service provider session not availaible. Please contact cymmetri administrator.

INVALID_SP_INITIATED_REQUEST

Invalid service provider request. Please contact cymmetri administrator.

ERROR_PARSING_SAML_SLO

Error validating saml slo request. Please contact cymmetri administrator.

SERVICE_PROVIDER_ERROR

Failed with service provider. Please contact cymmetri administrator.

EXPIRED_REFRESH_TOKEN

Refresh token is expired. Please contact cymmetri administrator.

INVALID_REFRESH_TOKEN

Invalid refresh token. Please contact cymmetri administrator.

EMPTY_REFRESH_TOKEN

Empty refresh token. Please contact cymmetri administrator.

REFRESH_TOKEN_COOKIE_NOT_PRESENT

Refresh token cookie not present. Please contact cymmetri administrator.

APPLICATION_ID_NOT_PRESENT_IN_CONFIG

Application id not present. Please contact cymmetri administrator.

APPLICATION_ID_NOT_PRESENT_IN_REQUEST

Application id is not present in request Please contact cymmetri administrator.

EXPIRED_SSO_IDENTITY_TOKEN

SSO identity token is expired. Please contact cymmetri administrator.

EMPTY_SSO_IDENTITY_TOKEN

SSO identity token is invalid. Please contact cymmetri administrator.

REQUEST_ISSUER_FROM_SAML_REQUEST_NOT_PRESNETTITY_TOKEN

Request issuer is not present in saml request. Please contact cymmetri administrator.

INVALID_SSO_IDENTITY_TOKEN

Invalid SSO identity token. Please contact cymmetri administrator.

IDP_SLO_FAILED

Identity provider single logout failed. Please contact cymmetri administrator.

BUILD_SLO_REQUEST_FAILED

Build to failed single logout request. Please contact cymmetri administrator.

SLO_REQUEST_SEND_FAILED

Failed to send single logout request. Please contact cymmetri administrator.

SLO_RESPONSE_SEND_FAILED

Failed to send single logout response. Please contact cymmetri administrator.

ERROR_PERSISTING_SLO_REQUEST

Failed to persist single logout request. Please contact cymmetri administrator.

SLO_RESPONSE_SAML_ATTRIBUTE_VALIDATION_FAILED

Failed to validate single logout response attribute. Please contact cymmetri administrator.

INVALID_SAML_SLO_RESPONSE

Invalid saml single logout response. Please contact cymmetri administrator.

INVALID_SAML_SLO_MESSAGE

Invalid saml single logout message. Please contact cymmetri administrator.

SLO_REQUEST_VALIDATION_FAILED

Failed to validate single logout request. Please contact cymmetri administrator.

SLO_RESPONSE_VALIDATION_FAILED

Failed to validate single logout response. Please contact cymmetri administrator.

SAMLSPSRVC.SOME_ERROR_OCCURRED_WORKING_ON_IT

Please contact cymmetri administrator.

SAMLSPSRVC.INVALID_IDENTITY_PROVIDER_STATUS

Invalid Identity Provider Status. Please contact cymmetri administrator.

SAMLSPSRVC.INVALID_ARGUMENTS

Please correct Input and try again. Please contact cymmetri administrator.

SAMLSPSRVC.INVALID_SERVICE_PROVIDER_STATUS

Invalid Service Provider Status. Please contact cymmetri administrator.

SAMLSPSRVC.MANDATORY_FIELD_EXCEPTION

Mandatory Field is Missing. Please contact cymmetri administrator.

SAMLSPSRVC.TENANT_OR_HOST_NOT_RECEIVED_FROM_NGINX

Please contact cymmetri administrator.

SAMLSPSRVC.TENANT_OR_HOST_PROTO_NOT_RECEIVED_FROM_NGINX

Please contact cymmetri administrator.

SAMLSPSRVC.SOME_IMPERSONATE_ACCESS

Unauthorized Access. Please contact cymmetri administrator.

SAMLSPSRVC.SERVICE_PROVIDER_INBOUND_MESSAGE_ERROR

Invalid SAML Message Received. Please contact cymmetri administrator.

SAMLSPSRVC.INVALID_SAML_RESPONSE_ASSERTION_VERSION

Invalid SAML Response Assertion version. Please contact cymmetri administrator.

SAMLSPSRVC.INVALID_SAML_RESPONSE_ISSUE_INSTANT

Invalid SAML Response Issue. Please contact cymmetri administrator.

SAMLSPSRVC.INVALID_SAML_RESPONSE_STATUS

Invalid SAML Response Status. Please contact cymmetri administrator.

SAMLSPSRVC.INVALID_SAML_RESPONSE_STATUS_REQUESTER_URI

Invalid SAML Response Status Requester URI. Please contact cymmetri administrator.

SAMLSPSRVC.INVALID_SAML_RESPONSE_STATUS_RESPONDER_URI

Invalid SAML Response Status Response URI. Please contact cymmetri administrator.

SAMLSPSRVC.INVALID_SAML_RESPONSE_STATUS_VERSION_MISMATCH_URL

Invalid SAML Response Status Version Mismatch URI. Please contact cymmetri administrator.

SAMLSPSRVC.INVALID_SAML_RESPONSE

Invalid SAML Response. Please contact cymmetri administrator.

SAMLSPSRVC.INVALID_SAML_RESPONSE_DESTINATION

Invalid SAML Response Destination. Please contact cymmetri administrator.

SAMLSPSRVC.INVALID_SAML_RESPONSE_VERSION_OR_ASSERTION_VERSION

Invalid SAML Response Version or Assertion Version. Please contact cymmetri administrator.

SAMLSPSRVC.INVALID_SAML_RESPONSE_ASSERTION_SUBJECT

Invalid SAML Response Assertion Subject. Please contact cymmetri administrator.

SAMLSPSRVC.INVALID_SAML_RESPONSE_ASSERTION_SUBJECT_NAMEID

Invalid SAML Response Assertion Subject NameId. Please contact cymmetri administrator.

SAMLSPSRVC.INVALID_SAML_RESPONSE_ASSERTION_ISSUER

Invalid SAML Response Assertion Issuer. Please contact cymmetri administrator.

SAMLSPSRVC.INVALID_SAML_RESPONSE_ASSERTION_CONDITION_AUDIENCE

Invalid SAML Response Assertion Condition Audience. Please contact cymmetri administrator.

SAMLSPSRVC.INVALID_SAML_RESPONSE_ASSERTION_AUTHNSTATEMENT

Invalid SAML Response Assertion AuthNStatement. Please contact cymmetri administrator.

SAMLSPSRVC.INVALID_SAML_RESPONSE_ASSERTION_ATTRIBUTE

Invalid SAML Response Assertion Attribute. Please contact cymmetri administrator.

SAMLSPSRVC.MULTIPLE_ASSERTIONS_IN_RESPONSE_NOT_SUPPORTED

Multiple Assertion in Response Not Supported. Please contact cymmetri administrator.

SAMLSPSRVC.INVALID_SAML_RESPONSE_ASSERTION_SIGNATURE

Invalid SAML Response Assertion Signature. Please contact cymmetri administrator.

SAMLSPSRVC.INVALID_SAML_RESPONSE_SIGNATURE

Invalid SAML Response Signature. Please contact cymmetri administrator.

SAMLSPSRVC.INVALID_SAML_RESPONSE_ASSERTION_CONDITION

Invalid SAML Response Assertion Condition. Please contact cymmetri administrator.

SAMLSPSRVC.INVALID_SAML_RESPONSE_ASSERTION

Invalid SAML Response Assertion. Please contact cymmetri administrator.

SAMLSPSRVC.INVALID_SAML_RESPONSE_ISSUER

Invalid SAML Response Issuer. Please contact cymmetri administrator.

SAMLSPSRVC.IDP_CONFIGURATION_NOT_FOUND

Idp Configuration Not Found. Please contact cymmetri administrator.

SAMLSPSRVC.SP_ID_IDP_ID_LOGIN_EMPTY

Service provider or identity provider login not provided. Please contact cymmetri administrator.

SAMLSPSRVC.SERVICE_PROVIDER_CONFIGURATION_NOT_FOUND

Service Provider Configuration Not Found. Please contact cymmetri administrator.

SAMLSPSRVC.ERROR_BUILDING_SAML_AUTHN_REQUEST

Failed To Build SAML Authentication Request. Please contact cymmetri administrator.

SAMLSPSRVC.ERROR_PERSISTING_SAML_AUTHN_REQUEST

Failed To Persist SAML Authentication Request. Please contact cymmetri administrator.

SAMLSPSRVC.ERROR_SENDING_SAML_AUTHN_REQUEST

Failed to Send SAML Authentication Request. Please contact cymmetri administrator.

SAMLSPSRVC.USER_EMAIL_ADDRESS_NOT_PRESENT

User Email Not Found. Please contact cymmetri administrator.

SAMLSPSRVC.USER_LOGIN_NOT_PRESENT

User Login Not Found. Please contact cymmetri administrator.

SAMLSPSRVC.EMAIL_ADDRESS_DOES_NOT_MATCH

Email Address does not matching. Please contact cymmetri administrator.

SAMLSPSRVC.LOGIN_DOES_NOT_MATCH

Login does not match. Please contact cymmetri administrator.

SAMLSPSRVC.USER_NOT_AVAILABLE

User is not present. Please contact cymmetri administrator.

SAMLSPSRVC.SERVICE_PROVIDER_NOT_FOUND

Service provider is not found. Please contact cymmetri administrator.

SAMLSPSRVC.UNAUTHORIZED_ACCESS

Unauthorized Access. Please contact cymmetri administrator.

SAMLSPSRVC.UNAUTHORIZED

Unauthorized Access. Please contact cymmetri administrator.

SAMLSPSRVC.USER_NOT_FOUND

User Not found. Please contact cymmetri administrator.

SAMLSRVC.SOME_ERROR_OCCURRED_WORKING_ON_IT

Please contact cymmetri administrator.

SAMLSRVC.DATA_NOT_PRESENT

Application configuration does not exist. Please contact cymmetri administrator.

SAMLSRVC.ARGUMENT_IS_REQUIRED

Please correct Input and try again. Please contact cymmetri administrator.

SAMLSRVC.APPLICATION_CONFIG_EXISTS

Application Configuration already exists. Please contact cymmetri administrator.

SAMLSRVC.APPLICATION_CONFIG_NOT_PRESENT

Application configuration does not exists. Please contact cymmetri administrator.

SAMLSRVC.INVALID_TOKEN

Invalid token Please contact cymmetri administrator.

SAMLSRVC.TENANT_NOT_FOUND

Tenant detail not availaible. Please contact cymmetri administrator.

SAMLSRVC.INVALID_APPLICATION_ID

Invalid application id. Please contact cymmetri administrator.

SAMLSRVC.APPLICATION_WITH_ISSUER_NOT_FOUND

Application configuration with issuer not found. Please contact cymmetri administrator.

SAMLSRVC.EXCEPTION_OCCURED_WITH_TENANT_JKS

Please contact cymmetri administrator.

SAMLSRVC.EXCEPTION_OCCURED_WITH_TENANT_JKS_KEY_GENERATE

Please contact cymmetri administrator.

SAMLSRVC.APPLICATION_NOT_ASSIGNED_TO_USER

Application is not assigned to the user. Please contact cymmetri administrator.

SAMLSRVC.TENANT_OR_HOST_PROTO_NOT_RECEIVED_FROM_NGINX

Please contact cymmetri administrator.

SAMLSRVC.USER_NOT_ASSIGNED_SERVICE_PROVIDER_ERROR

User is not assigned to the service provider. Please contact cymmetri administrator.

SAMLSRVC.SOMETHING_WENT_WRONG

Please contact cymmetri administrator.

SAMLSRVC.SERVICE_PROVIDER_NAMEIDVALUE_MISMATCH_ERROR

Service provider nameId value does not match with configured application. Please contact cymmetri administrator.

SAMLSRVC.SERVICE_PROVIDER_NAMEID_MISMATCH_ERROR

Service provider nameId value does not match with configured application. Please contact cymmetri administrator.

SAMLSRVC.TENANT_HOST_NOT_FOUND

Please contact cymmetri administrator.

SAMLSRVC.TENANT_OR_HOST_NOT_RECEIVED_FROM_NGINX

Please contact cymmetri administrator.

SAMLSRVC.APPLICATION_CONFIG_NOT_FOUND

Application Configuration not found. Please contact cymmetri administrator.

SAMLSRVC.SAMLREQUEST_NOT_PRESENT_IN_REQUEST

SAML Request is not present in Request. Please contact cymmetri administrator.

SAMLSRVC.CONFIGURED_REQUEST_ISSUER_AND_SAML_REQUEST_NOT_ISSUER_NOT_MATCH

Application issuer Configuration does not match. Please contact cymmetri administrator.

SAMLSRVC.INVALID_REQUEST_ISSUER

Invalid Request Issuer. Please contact cymmetri administrator.

SAMLSRVC.IDENTITY_TOKEN_SAML_REQUEST_NOT_FOUND

Invalid Identity SAML Request Token. Please contact cymmetri administrator.

SAMLSRVC.IDENTITY_REFRESH_SAML_REQUEST_NOT_FOUND

Invalid Refresh SAML Request Token. Please contact cymmetri administrator.

SAMLSRVC.USER_NOT_ASSIGNED_TO_APPLICATION

User is not associated with the application. Please contact cymmetri administrator.

SAMLSRVC.SSO_ERROR_SENDING_SAML_RESPONSE

Error Sending SAML Response. Please contact cymmetri administrator.

SAMLSRVC.SSO_CONFIG_NOT_FOUND_APPLICATION_ID

SSO configuration not found for application. Please contact cymmetri administrator.

SAMLSRVC.SSO_USER_NOT_FOUND

SSO user found for application. Please contact cymmetri administrator.

SAMLSRVC.INTERNAL_SERVER_ERROR

Please contact cymmetri administrator.

SAMLSRVC.IDP_SSO_JKS_MANAGER_FAILED

Please contact cymmetri administrator.

SAMLSRVC.IDP_SSO_CUSTOM_JKS_FAILED

Please contact cymmetri administrator.

SAMLSRVC.IDP_SSO_FAILED

SSO failed for identity provider. Please contact cymmetri administrator.

SAMLSRVC.SERVICE_PROVIDER_SESSION_NOT_FOUND

Service provider session not availaible. Please contact cymmetri administrator.

SAMLSRVC.INVALID_ARGUMENTS

Please correct input and try again. Please contact cymmetri administrator.

SAMLSRVC.INVALID_SP_INITIATED_REQUEST

Invalid service provider request. Please contact cymmetri administrator.

SAMLSRVC.ERROR_PARSING_SAML_SLO

Error validating saml slo request. Please contact cymmetri administrator.

SAMLSRVC.SERVICE_PROVIDER_ERROR

Failed with service provider. Please contact cymmetri administrator.

SAMLSRVC.EXPIRED_REFRESH_TOKEN

Refresh token is expired. Please contact cymmetri administrator.

SAMLSRVC.INVALID_REFRESH_TOKEN

Invalid refresh token. Please contact cymmetri administrator.

SAMLSRVC.EMPTY_REFRESH_TOKEN

Empty refresh token. Please contact cymmetri administrator.

SAMLSRVC.REFRESH_TOKEN_COOKIE_NOT_PRESENT

Refresh token cookie not present. Please contact cymmetri administrator.

SAMLSRVC.APPLICATION_ID_NOT_PRESENT_IN_CONFIG

Application id not present. Please contact cymmetri administrator.

SAMLSRVC.APPLICATION_ID_NOT_PRESENT_IN_REQUEST

Application id is not present in request Please contact cymmetri administrator.

SAMLSRVC.EXPIRED_SSO_IDENTITY_TOKEN

SSO identity token is expired. Please contact cymmetri administrator.

SAMLSRVC.EMPTY_SSO_IDENTITY_TOKEN

SSO identity token is invalid. Please contact cymmetri administrator.

SAMLSRVC.REQUEST_ISSUER_FROM_SAML_REQUEST_NOT_PRESNETTITY_TOKEN

Request issuer is not present in saml request. Please contact cymmetri administrator.

SAMLSRVC.INVALID_SSO_IDENTITY_TOKEN

Invalid SSO identity token. Please contact cymmetri administrator.

SAMLSRVC.IDP_SLO_FAILED

Identity provider single logout failed. Please contact cymmetri administrator.

SAMLSRVC.BUILD_SLO_REQUEST_FAILED

Build to failed single logout request. Please contact cymmetri administrator.

SAMLSRVC.SLO_REQUEST_SEND_FAILED

Failed to send single logout request. Please contact cymmetri administrator.

SAMLSRVC.SLO_RESPONSE_SEND_FAILED

Failed to send single logout response. Please contact cymmetri administrator.

SAMLSRVC.ERROR_PERSISTING_SLO_REQUEST

Failed to persist single logout request. Please contact cymmetri administrator.

SAMLSRVC.SLO_RESPONSE_SAML_ATTRIBUTE_VALIDATION_FAILED

Failed to validate single logout response attribute. Please contact cymmetri administrator.

SAMLSRVC.INVALID_SAML_SLO_RESPONSE

Invalid saml single logout response. Please contact cymmetri administrator.

SAMLSRVC.INVALID_SAML_SLO_MESSAGE

Invalid saml single logout message. Please contact cymmetri administrator.

SAMLSRVC.SLO_REQUEST_VALIDATION_FAILED

Failed to validate single logout request. Please contact cymmetri administrator.

SAMLSRVC.SLO_RESPONSE_VALIDATION_FAILED

Failed to validate single logout response. Please contact cymmetri administrator.

SAMLSRVC.UNAUTHORIZED

Unauthorized. Please contact cymmetri administrator.

Adding the Application

Accessing the Applications Menu

Applications menu in the administration page displays the various options pertaining to the Application Management processes.

Applications menu may be accessed by two ways -

Identity Hub

Image: Accessing Applications Menu from the Identity Hub

  1. Click on the Identity Hub icon on the left side bar.

  2. Click on the Applications text on the slide out bar.

Single Sign On Module

Image: Accessing the Single Sign On Module from the Products Menu

  1. Click on the Products menu icon on the left side bar.

  2. Click on the Single SignOn Module icon in the popup list.

Image: Accessing the applications submenu

4. Click on the Applications text on the slide out bar.

Understanding the applications supported by Cymmetri

Applications supported by the Cymmetri Identity platform fall majorly into three categories -

Adding Application

Once you have chosen the application to be added from the above categories, you are ready to add a new application.

Image: Applications Menu

  1. Click on the “Add New” button on the top-right corner in the Applications menu.

Image: Add New Application Sub Menu

2. In the Add New Application screen, you may search for your desired application (e.g., Active Directory), or your desired connector (e.g., REST) or choose the “Custom” application type from the available application catalogue.

Image: Searching for application or connector in the Application Catalog

3. Now click on the tile shown in the list below to open the right slide out menu for renaming application as shown below.

4. Add your custom label (if you wish) in the text box and click on the “Add Application” button.

Image: Application Added

Conclusion

Accessing Cymmetri Cloud

To access Cymmetri, user must use a web browser such as Google Chrome or Safari and type the appropriate address.

Sign In to Cymmetri

Steps to access Cymmetri

Below is a step-by-step guide for accessing Cymmetri:

Step 1 - Type the appropriate URL in the browser address bar.

What is Cymmetri?

What is Cymmetri?

Cymmetri is a well-trusted platform acting as an advisor and an end-to-end partner for Security-aware teams looking to deploy Identity and Access Management Solutions across their organization. We offer an industry-standard product backed by a strong team that always aims to innovate our solutions to cater to a wide variety of enterprise needs.

Login as one of the following administrators - Organization Administrator, Domain Administrator, Application Administrator. []

Login as one of the following administrators - Organization Administrator, Domain Administrator, Application Administrator. []

Pre-configured Applications These are the applications that have already been configured by the Cymmetri Identity platform for provisioning on cloud or on-premises. The list of is available.

Custom Applications for Provisioning These are the applications that you wish to manage through Cymmetri and support the generic connectors that the Cymmetri Identity platform provides. The list of is available.

Custom Applications for Single SignOn only When you need to add an application for the purpose of performing only Single SignOn for them, Cymmetri provides the ability to add a custom application which may be configured for Single SignOn using the .

Application has been successfully added to your listing now. You may click on the configure now button to start configuring the application. Reference for configuring application for various flows is available .

URL :

Example:

Admin Types
Admin Types
currently supported applications
currently supported connectors
supported Single SignOn mechanisms
here
https://<companyname>.cymmetri.com/login
https://helpdocs.cymmetri.com/login

Getting Started with Cymmetri Cloud 2.0

Getting Started

Logging in as an end user

Cymmetri User Login flow starts with the process of a user accessing their tenant instance login page.

Typically, this would be of the format, https://<company-name>.cymmetri.io

Once, on the Cymmetri Login page, please enter your username (you should have received this on your corporate email).

Enter the username received on the mail, and click on the Next button.

If your administrator has enabled password-less login option, then you will be able to see the Login without password button, else you will see the login button.

The step below indicates the trigger for the Password-less login flow.

Clicking on the "Login without password" button will trigger the password-less login flow, will prompt the registered multi-factor authentication options for login.

The step below indicates the trigger for the Password-based login flow.

Enter the password for your user account and click on the Login button to proceed with the password-based login flow. Depending on whether the administrator has enabled the multi-factor authentication options for your organization, and depending on the factors that you have registered for, you will be shown login options.

The steps below for choosing multi-factor authentication options are common for the password-less login and password-based login flows.

Option 1 - Choosing Cymmetri Authenticator will require you to enter your Time-based OTP as it appears on your Cymmetri Authenticator mobile application. Enter the TOTP and click on Verify to continue.

Option 2 - Choosing Push Authenticator will send a push notification to your mobile phone and you may click on the accept button to complete the login process.

Option 3 - Choosing Google Authenticator will require you to enter your Time-based OTP as it appears on your Google Authenticator mobile application. Enter the TOTP and click on Verify to continue.

Option 4 - Choosing SMS Authenticator will send an OTP to the user's registered mobile number and the user is expected to enter this OTP and Click on Verify to continue.

Regardless of the flow followed and the multi-factor authentication option chosen, the user will end up on the dashboard page below upon successful login.

Setting up Multi-factor authentication rules for Login

Cymmetri Identity platform supports login using multi-factor authentication options as -

  1. a second factor of authentication for the password-based login process.

  2. a method of authentication for the password-less login flow.

The following steps indicate how to set up multi-factor authentication options in your Cymmetri Identity platform instance for both flows

Cymmetri allows flexibility by introducing both modern mechanisms, such as -

1. Time based OTP (through Cymmetri Authenticator mobile application)

2. Time based OTP (through Google Authenticator and other mobile application)

3. Push based Notification (through Cymmetri Authenticator mobile application)

4. SMS OTP

5. Email OTP

In this document, we will go through setting up the Multi-factor authentication options on the Cymmetri Identity Platform, and run through the setup of Multi-factor authentication options and their usage for the login scenario.

Setting up Multi-factor Authentication for the tenant

1. Access Multi-factor authentication by going to Products menu > Multifactor authentication product

2. Next, we select factors sub-menu

3. We now select the Cymmetri Authenticator (Time based OTP) toggle and click confirm to setup Cymmetri Authenticator as an MFA option

4. Similarly we toggle on the Push Notification and SMS Authenticator (OTP) options

5. Next we select the configuration sub-menu to configure the OTP options, here we will enable the Email OTP option by toggling it on.

6. Next we move to configure the rules for Multi-factor authentication policy for login

7. Click on the pencil icon to start editing the policy and change the dropdown of all factors to indicate that they are mandatory (required).

Let us talk about the options available for each factor -

Required - This setting means that the corresponding factor is required to be enabled for each user, and every user must set up this factor in their next login.

Optional - This setting means that the corresponding factor is not required to be enabled for each user, and they may configure this option from their "My Workspace". Once the user configures it, they may use it for the purpose of second level of authentication during authentication. Disabled - This settings means that the corresponding factor is not required or enabled for each user, and the user may not configure or use it for authentication into the Cymmetri platform.

8. Now click on the pencil icon in the upper box to toggle on this rule.

9. All subsequent logins of any user on the Cymmetri Identity platform will now require the use of mandatory MFA for one of these factors.

The following steps indicate how to set up for Password-less login

As an organization or domain administrator, click on the products menu on the left-hand side, and then click on the passwordless button to start configuring password-less authentication option.

Click on the toggle button on the top to enable the password-less login option for the end-users logging into the Cymmetri Identity platform tenant.

Further, as an administrator you may turn on/off the toggle switches to allow/block the end-user from using a particular multi-factor authentication option during password-less login.

  1. TOTP Based - refers to the Cymmetri Authenticator option as indicated earlier in the document.

  2. OTP Based - refers to the SMS Authenticator option as indicated earlier in the document.

  3. Consent Based - refers to the Push Authenticator option as indicated earlier in the document.

Starting your Cymmetri Cloud 2.0 Trial

  1. Start by clicking on the link to start the registration of your tenant on the Cymmetri Cloud 2.0 and enter your personal details with your work email. Click on Next.

  1. Enter your country, phone number (mandatory to receive OTP), and enter a domain name for your tenant. In case the domain available message is not shown, choose a different domain name. Click on Start trial button.

  1. You will receive an OTP on your mobile number from the previous step. Enter the OTP here and wait for a few seconds for your tenant to be created.

  1. You will be redirect to your domain to create a new first Organization Admin User. Ensure that your password matches the password policy.

  1. You will receive a message to show that your tenant has been created.

  1. Click on the login button for proceeding with the onboarding process

  1. Click on the Next button to enter your password and proceed with the setup of your tenant.

  1. Choose applications from the application catalogue, click on the application icon. Then click on the Next button.

  1. Enter details to create a second administrator account. Click on Send Invite button to create an administrator. Click on Next button to proceed.

  1. (Optional) Add users if you wish to. Then click on finish.

  1. You will be redirected to the Dashboard to proceed with the system.

Next Steps

Reports and Analytics

Report Listing

Report Scheduling

Login with External Identity Provider - Social logins

Listing of external Identity Providers

Configuring Google as an external Identity Provider

Team

Cymmetri provides a bird’s eye view to user of all the user’s that report to.

Supported Web Browsers

Cymmetri supports the following web browsers.

Version of specific browsers supported by Cymmetri.

Additionally, you might be able to follow the , if your multi-factor authentication options have already been registration using the .

OS
Chrome
Firefox
IE
Edge
Safari
OS
Browser
Version
Forgot Password/Unlock Account flow
first time User registration flow
Learn how new users can access your tenant.
Manage your users and groups.
Manage your applications.
Check out your workspace.
Add your own branding.

Android

Supported

Supported

Not Applicable

Supported

Supported

iOS

Supported

Supported

Not Applicable

Supported

Supported

Mac OS

Supported

Supported

Not Applicable

Supported

Supported

Windows

Supported

Supported

Not Supported

Supported

Supported

Mac(Monterey)

Safari

15.3

Mac(Monterey)

Firefox

98

Mac(Monterey)

Firefox

97

Mac(Monterey)

Firefox

96

Mac(Monterey)

Chrome

99

Mac(Monterey)

Chrome

98

Mac(Monterey)

Chrome

97

Mac(Monterey)

Opera

84

Mac(Monterey)

Opera

83

Mac(Monterey)

Opera

82

Mac(Monterey)

Edge

99

Mac(Monterey)

Edge

98

Mac(Monterey)

Edge

97

Mac(Catalina)

Safari

13.1

Mac(catalina)

Firefox

98

Mac(catalina)

Firefox

97

Mac(catalina)

Firefox

96

Mac(catalina)

Chrome

99

Mac(catalina)

Chrome

98

Mac(catalina)

Chrome

97

mac(catalina)

Opera

84

mac(catalina)

Opera

83

mac(catalina)

Opera

83

mac(catalina)

Edge

99

mac(catalina)

Edge

98

mac(catalina)

Edge

97

Windows11

Edge

99

Windows11

Edge

98

Windows11

Edge

97

Windows11

Firefox

98

Windows11

Firefox

97

Windows11

Firefox

96

Windows11

Chrome

99

Windows11

Chrome

98

Windows11

Chrome

97

Windows 11

Opera

84

Windows 11

Opera

83

Windows 11

Safari

5.1

Windows 10

Edge

99

windows 10

edge

98

Windows 10

Chrome

97

windows 10

IE

11

Windows 10

Firefox

98

Windows 10

Firefox

97

Windows 10

Firefox

96

windows 10

Chrome

99

windows 11

Chrome

98

windows 11

Chrome

97

Windows 10

Opera

84

Windows 10

Opera

83

Windows 10

Opera

82

Windows 10

Safari

5.1

My Access

Cymmetri provides an interface where users can view the applications assigned to the logged in user from where the user can access such applications using Single Sign-On (SSO). The SSO ensures that users do not need to remember the username and password to access the desired application.

The users can also request for access applications not yet assigned / entitled to them by providing the necessary information before being granted access.

Application

The Application section under My Access provides user easy and friction-less access to the applications they want to use. Applications can be assigned to the user using the Cymmetri Provisioning framework, either as a birth-right (default) access, or through Provisioning Rules as defined by the Administrator. For applications where an approval is required, the Cymmetri Workflow processes such access requests before granting access to the user.

Search an application

The search bar on the Application page allows users to quickly search an application by its name. To use the search, click on the search icon followed by typing the name of the desired application.

The search result is automatically displayed for the matching applications below

The search for applications is across the tags defined by the user.

Performing SSO

The user can access any application by simply clicking on the desired application tile. Cymmetri will initiate the authentication request to the target application, and here, the user will get authenticated to the desired application in a new browser tab or window.

User accessing the applications which are assigned time bound basis, will show a snippet defining the access period. This is for the user’s information. The snippet is visible while user hovers over the application tile.

Managing application options

As a user self-service action, applications assigned to the user can provide the user with options to manage their access. Clicking on the menu button under an application tile opens a context menu for that application.

Setting

Under the setting context menu, the user can view the current Role assigned to user, and if configured by Administrator, the user can change or request for change the role assigned to them.

Revoke Consent

User can self revoke the consent granted at time of authentication with specified applications. This consent is required when user authorizes Cymmetri to capture certain user attributes.

The system will warn that the action cannot be undone.

After the user’s confirmation, Cymmetri will remove the consent granted for storing the user attributes.

The consent revoked by the user, may be essential for accessing the application via Cymmetri. At the time of next authentication of the application, the consent will be requested again and the user can choose to provide the same.

Request Extension

Cymmetri allows user to extend their access period for applications with time-bound access.

The user can opt the Request Extension option from the application context menu.

Cymmetri shows the current access end date. The user is required to select a new access end date and click on Request button.

On successful submission, the user can view the success message.

Copy to Tag

Managing Tags

The user is allowed to create Tags to manage the applications assigned into different sections for ease of access.

Create a tag

To add a tag, click on Create New Tag button. Provide the desired name and click on Create button.

Once submitted successfully, the tag is visible on Application page.

User can create up to 4 tags. After user creates the fourth tag, the Create New Tag button is disabled.

A user cannot create a tag with an existing tag name. Cymmetri will show an error Tag with same name already exists.

Copying applications to a tag

User can copy applications from the All Applications section to any tag as desired. Click on the menu button inside an application tile, select the option Copy to Tag.

Once the tag is clicked, the system will copy the application to the respective tab and user will see the sucess message.

User can now view the application under the tag by clicking on the tag name.

User can move an application from one tag to another tag by following the above mentioned process.

Editing a tag name

User can rename a tag anytime by clicking on the menu button on the tag and selecting Rename option.

Type in the revised name for tag and click Update button.

On successful update, the tag name is changed and user can see the success message.

Deleting a tag

User can opt to delete a tag using the the delete tag option on clicking the Delete option.

Clicking on Delete will remove the tag immediately. On successful delete, the tag is removed and user can see the success message.

Deleting the tag will not remove the applications assigned to user. The applications can always be viewed under All Applications.

Request

User can view the available applications after click on the Request button on the Application page under My Access.

Search

The user can search all applications under Request by typing the required application name under the search box on top right corner.

The user can view all the applications that are available for the organization. The applications already assigned to the user are indicated by a green check mark.

The user can request for any application not already assigned to them by clicking on the required application tile.

The search can be used to quickly navigate to any application the user wants to access.

The user is required to select the period of access - either a Start and End Date for access or opt for Lifetime Access. After the selection, the user can submit the request by clicking the Save button.

Depending on the configuration performed by the Administrator, the user will be assigned to the application or the approval request for the user’s access will be initiated.

After all the approvals are granted, the user will be assigned to the application.

If there is no approval required for the requested role, the system will automatically assign the role to the user.

Users have an option to copy and application to any tag created. Refer the below.

copying applications to a tag

Dashboard

The Dashboard under My Workspace is the default page once the user has logged in to Cymmetri. This page is accessible to all users in Cymmetri.

Cymmetri assigns a basic user role to all users in the system be default. All users with such a role will be able to view the screen as below-

For users with a Cymmetri Administrator role will be able to view additional system information on the dashboard. An example dashboard view of a Cymmetri Administrator user -

Cymmetri Administration activities can be performed by users with different roles which can be assigned. The screen above

Recently Used Applications

The user sees a summary of the recently accessed applications and click on any of the application will result in SSO to such application. The system will show No recent apps if there are no applications accessed by user.

Access Expiring

The user is notified about the applications where the access will be automatically revoked after the stipulated time is over. The applications visible under this section are those whose access time is defined for the user and not provided as lifetime access to such user.

Running Certifications

The user sees a summary of the certification campaigns which are currently active. The user may require to provide access confirmations for continuing access of other Cymmetri users by either approving or revocation of such access. A click on the active campaign will lead the user to the Access Review section of Cymmetri My Workspace.

Requests

The user sees a summary count of requests that require logged in user’s attention. Access requests requiring the user’s confirmations are listed in the Inbox section of Cymmetri My Workspace. A quick reference of the available options are:

  • Pending Requests

  • Application Requests

  • Claims

  • New Applications

  • New Joinees

User can click on See All which will lead the user to Team section of Cymmetri My Workspace. The system will show count as zero is there are no new pending requests for the user. For each new unread request, the system will indicate the count in the orange box.

Introduction

Cymmetri Cloud allows all users to be able to perform self-service actions such as Single Sign-On, password reset, MFA reset, Approve access request for other users, Re-certification approvals among others.

Cymmetri My Workspace is the central console where such user actions can be performed from.

User Navigation

From the Dashboard page of Cymmetri My Workspace, the user can navigate to different sections of Cymmetri from the main navigation panel - the menu.

Users will administrator privileges will be able to see additional menu items above the My Workspace menu section called Admin.

Administrator user can navigate from their My Workspace to Admin section and vice-versa by clicking on the appropriate Main Menu Navigation link.

Accessibility options & Settings

The logged in user can access the Settings page by clicking on the user menu on the header.

Under the Settings sub-menu, the user can-

  • View their Profile

  • Change Password

  • Manage Additional Verification (MFA)

My Profile

Change Password

The logged in user can self change the password using the Change Password sub-menu.

Additional Verification (MFA)

A logged in Cymmetri user can self mange the Cymmetri Multi-Factor Verification options enabled by the Cymmetri Administrator. The user can see the list of available options and can remove and setup these options as needed.

Logout from Cymmetri

A Cymmetri user can be logged out either by the system through the time-out policy, or the user can logout using the My Workspace logout options as shown below-

Logout from User menu option

Logout from Main Menu navigation option

Dashboard

The Dashboard under My Workspace is the default page once the user has logged in to Cymmetri. This page is accessible to all users in Cymmetri.

Cymmetri assigns a basic user role to all users in the system be default. All users with such a role will be able to view the screen as below-

For users with a Cymmetri Administrator role will be able to view additional system information on the dashboard. An example dashboard view of a Cymmetri Administrator user -

Cymmetri Administration activities can be performed by users with different roles which can be assigned. The screen above

Recently Used Applications

The user sees a summary of the recently accessed applications and click on any of the application will result in SSO to such application. The system will show No recent apps if there are no applications accessed by user.

Access Expiring

The user is notified about the applications where the access will be automatically revoked after the stipulated time is over. The applications visible under this section are those whose access time is defined for the user and not provided as lifetime access to such user.

Running Certifications

The user sees a summary of the certification campaigns which are currently active. The user may require to provide access confirmations for continuing access of other Cymmetri users by either approving or revocation of such access. A click on the active campaign will lead the user to the Access Review section of Cymmetri My Workspace.

Requests

The user sees a summary count of requests that require logged in user’s attention. Access requests requiring the user’s confirmations are listed in the Inbox section of Cymmetri My Workspace. A quick reference of the available options are:

  • Pending Requests

  • Application Requests

  • Claims

  • New Applications

  • New Joinees

User can click on See All which will lead the user to Team section of Cymmetri My Workspace. The system will show count as zero is there are no new pending requests for the user. For each new unread request, the system will indicate the count in the orange box.

My Access

Using Cymmetri, user can access the applications assigned to them seamlessly. The access defined for the user (also called entitlements) allows the user to authenticate without the need of username and password of the target application.

Users can tag the applications assigned to them and perform other self service activities.

Users can also request for applications not already assigned to them by clicking on the Request button. Here the user can see the list of resources available for request by the user.

Inbox

Cymmetri users can approve the access of other users through the Inbox section in Cymmetri My Workspace. The users who are mapped as approver, receive the approval request in their Inbox, where the request can be authorized or rejected with appropriate comments.

The user can also view the status of previous requests under the Archive section. Under Claims, the user can view the requests which are mapped to Cymmetri Groups, where the user will be part of such an approver group.

The user can also view the request for access raised by them under My Requests.

Access Review

As part of Cymmetri My Workspace, users can review the on-going access of other Cymmetri users, provided they are assigned to review the access of such users.

Cymmetri Campaigns which are currently active appear for the user to click and review the access grants.

This feature is coming soon!

Team

For Cymmetri users who are reportees of the logged in user, the system shows such reportees as a grid or a list. The manager user, can view the assigned application of the reportee. The manager user can also view the risks associated with the access entitlements of the reportee.

FAQ

Introduction to Application Management

Understand how to add and manage your cloud and on-premise applications through your Cymmetri Identity platform deployment. Your Cymmetri Identity deployment allows you to manage your cloud-based applications and on-premise applications from a single administration console.

Adding Applications

Understand how to add the applications used by your organization, to be managed your Cymmetri Identity platform deployment. Use the FAQ to learn how to add applications to be managed in the deployment.

Single Sign On

Single Sign On is the process of ensuring that once an end user is logged onto the Cymmetri Identity platform, they should be able to seamlessly move their session to any of your applications managed by your Cymmetri Identity platform deployment. Use the FAQ to learn how to configure Single Sign On for your application.

Managing the Application Sign On Policy

Modern IAM deployments wishing to have progressive authentication may require some critical application integrations within your deployment to perform additional authentication while performing Single Sign On for the end user. Use the FAQ to learn how to configure the Application Sign On Policy.

Provisioning

Provisioning refers to the process of creating, modifying, and in general pushing the user account information stored on the Cymmetri Identity platform to the applications managed by your Cymmetri Identity platform deployment. Use the FAQ to learn how to configure User Account Provisioning.

Reconciliation

Reconciliation of User accounts is a primary activity in Identity Governance, which allows for synchronisation between the user account information on the managed application and the Cymmetri Identity platform deployments, including provisioning, modifying, deprovisioning, and modifying user account attributes based on various synchronisation states. Use the FAQ to learn how to configure the Identity Reconciliation Process.

Assigning Application

Once an application has been added to the Cymmetri Identity platform deployment and the necessary configurations for Single Sign On, Provisioning and Reconciliation have been performed, an application may be assigned to an individual user or to a group of users. Use the FAQ to learn how to assign application to a user.

Session Management

Assigning Applications to End Users

Once the managed application has been added to your Cymmetri Identity platform tenant, you will be able to assign applications to your end-users.

User Assignment Scenarios

There are three ways in which users may be assigned to users -

  1. Admin may assign an application directly to a user.

  2. Admin may map an application to a group; and the user is added to the group or is already part of the group.

  3. End User may request an application and is granted access to the application.

Flows of Scenarios

There are flows in which is user is assigned to the application

Admin assigns an application directly to the end user

Users of the Cymmetri Identity platform deployment having admin roles among Organization Admin, Domain Admin, and Application Admin, will be able to assign an end-user to a managed application.

First, we need to add the application to the Cymmetri Identity platform deployment for managing it through Cymmetri deployment.

Next, we move to configure the application to assign it to an end user.

Click on the application tile to configure it.

The flow for assignment goes as follows -

Flow Description

  1. Admin clicks on the application tile, and starts the configuration.

  2. Click on the “assign new” button on the users menu.

  3. We see the following fields here -

    1. Start Date - When the user will be assigned the application.

    2. End Date - When the user will be deprovisioned from the application.

    3. Lifetime Access - If selected, the user will be assigned the application for the entire duration that they are active in the Cymmetri Identity platform.

    4. Dynamic Form Fields - Dynamic form fields may be configured by the admin and enabled to allow the administrator to add more user attribute fields.

      1. Preferred Username - Mandatory text field

      2. Request Additional Modules - Optional Radio button

  4. This step shows that the workflow has been initiated for the user. This is because, we have enabled the workflow for application provisioning (user assignment) for this managed application.

  5. The approver may change the start and end date, if required; refer to the dynamic form attributes passed during the application assignment.

  6. Let us click on accept to continue the flow.

  7. Let us click “Accept” to proceed.

  8. After the last level approver has also approved the assignment, the backend processes will run the application provisioning flow.

  9. Once the user has been provisioned in the application, they will be able to see it in their list of applications.

Admin assigns an application directly to a group

Users of the Cymmetri Identity platform deployment having admin roles among Organization Admin, Domain Admin, and Application Admin, will be able to assign an entire group of users to a managed application.

First, we need to add the application to the Cymmetri Identity platform deployment for managing it through Cymmetri deployment.

Next, we move to configure the application to assign it to a group.

Click on the application tile to configure it.

The flow for assigning a group to an application goes as follows -

Flow Description

  1. Admin clicks on the application tile, and starts the configuration.

  2. Click on the assignments tab on the left hand side menu.

3. Click on the “Assign New” button in the groups section.

4. Search for the group you wish to assign the application to and click on the assign button.

6. Viewing the application tiles, we can see if the user was directly assigned the application or received access by the virtue of being part of a group.

User requests for an application

Users of the Cymmetri Identity platform deployment will be able to request for access to a managed application.

The flow for an end-user to request for an application is as follows -

Flow Description

  1. User visits their “My Workspace” menu.

  2. Click on the “My access” left-hand side menu.

5. We see the following fields here -

a. Start Date - When the user will be assigned the application.

b. End Date - When the user will be deprovisioned from the application.

c. Lifetime Access - If selected, the user will be assigned the application for the entire duration that they are active in the Cymmetri Identity platform.

d. Dynamic Form Fields - Dynamic form fields may be configured by the admin and enabled to allow the administrator to add more user attribute fields.

i. Preferred Username - Mandatory text field

ii. Request Additional Modules - Optional Radio button

  1. This step shows that the workflow has been initiated for the user. This is because, we have enabled the

workflow for application provisioning (user assignment) for this managed application. The workflow approver will then receive a request to approve the user assignment in their inbox.

Now the approver may approve or reject the user assignment

The approver may change the start and end date, if required; refer to the dynamic form attributes passed during the application assignment. Let us click on accept to continue the flow. Now the next level of approver will be able to see the previous levels of approval, and similar to the previous level of approval, the approver may change the start and end date, if required; refer to the dynamic form attributes passed during the application assignment.

Let us click “Accept” to proceed. After the last level approver has also approved the assignment, the backend processes will run the application provisioning flow. Once the user has been provisioned in the application, they will be able to see it in their list of applications.

Dynamic Form

Dynamic Form allows the administrator to request additional fields from the administrator or the end user assigning the applications to collect additional user fields to be used for provisioning the user into the managed application.

Creating a dynamic form

Creating a dynamic form involves the administrator configuring the managed application by clicking on the left-hand side menu item “forms”.

You may now load the default form by clicking on the “Load Sample form”

You may now edit the default form, a preview of the form will be shown on the right hand side.

Let us imagine a simple form that can capture “Preferred Username” [text field] and “Request Additional Modules” [Radio] with two options “Admin” and “Readonly”.

Click on the save button.

Now click on the “Confirm” button in the popup to enable the form for the application.

Inbox

The Cymmetri application workflow mechanism is used to enforce approval of users access requests for the purpose of right-user-getting-correct-access. At the same time, providing a history of all such requests and their approvals ensures accurate reporting.

The Cymmetri Inbox section allows users to view and approve the access requests for other Cymmetri users. Apart from user access approval requests, the user can also view the status of their own access requests under My Requests section.

My Requests

The My Requests section lists all the application access requests raised by the logged in user. Here the user can view the status of the application access requests raised and review the access grant history.

Open

The Open menu lists all the requests yet to be approved for the user.

Closed

The Closed menu lists all the requests that have been either approved or rejected for access.

By clicking on one of the mail list items, the user can view the history of the task. The details of the approve or reject action can be seen with the time and date of such an action as well as the comments of the approver if any.

Requests

The Requests section under Inbox lists the application access requests raised by other Cymmetri users.

Requesting for an application

Cymmetri users can request for access to applications not automatically assigned to them. The request process is managed from My Access > Request section.

The request for application access may not always require an approval. In certain cases the access request will be automatically applied as there is no approval workflow configured by Cymmetri Administrator.

Approving an application request

After a Cymmetri user has raised an approval request, the approver authority is selected by Cymmetri automatically. The approver is alerted by the system through an notification event in the user’s Notification tray. Cymmetri can also alert the approval user by way of email sent to the user.

The user can also view the notification request under Request section on the user’s Dashboard.

By clicking on the notification or the Application Requests short-link, the user is sent to the Inbox page. Here the user should click on Open menu under Requests section to view all the pending application access requests.

On clicking one of the mail list items, the user can view the details of the application access request.

The approval user can now approve the request or mark their rejection for the access request. The approval user may provide comments for the action taken under the Comment box text area.

After clicking the Accept button, the user approves the application access request. Cymmetri shows the success message to the approval user.

Viewing application request history

Cymmetri users can view the history of processed requests by way the Archive menu under Requests section. The user can click on any one of the mail list items, and view the details of task.

If an access request requires more than one level of approval, the same can be viewed one below the other with the following details -

  • Approver Name

  • Date and Time of approval

  • Approver comments (if any)

Requesting change in application access

Cymmetri users can request for change in access role for applications assigned to them. The request process is managed from My Access > Application > Setting context menu. An approval request is generated once the user submits the role change request.

The role change may not always require an approval. In certain cases the role change will be automatically applied as there is no approval workflow configured by Cymmetri Administrator.

Claims

Claims is the process of approving user access requests through any one approving authority in Cymmetri. In the event one approver is unavailable, it is likely other approver(s) can stake claim for the request and process the access request.

The approvers are configured by the Cymmetri Administrator. The approver level level can be defined as a single user, reporting manager or a group of users.

A claim request can be access from the Dashboard or the Notification tray.

A click on the notification or claims short-link will land the user on the Claims section of the Inbox.

The user can click on any one of the mail list items under Claims section, and view the details of task.

Once the user clicks on Claim button, the request moves from the Claims section to the My Requests section. The claim user sees the success message Task claimed successfully and the user is automatically guided to the Open menu.

The user can click on the list item and view the details for access request. The approver can leave comments if needed and Accept to approve or Reject the request.

Once approved successfully, the user will see the success notification.

Click on the assignments tab on the left hand side menu.

Search for a user in the search text box, and once the user is found, click on the “assign” button.

Now click on save to register a request for application assignment.

This will raise a request to provide “lifetime” access to the user with the given custom attributes.

The workflow approver will then receive a request to approve the user assignment in their inbox.

Now the approver may approve or reject the user assignment

Now the next level of approver will be able to see the previous levels of approval, and similar to the previous level of approval, the approver may change the start and end date, if required; refer to the dynamic form attributes passed during the application assignment.

5. Checking for the users who belong to the group, we can see that the application has been assigned.

3. Now Click on the “+ Request” button on the top-right button.

4. Click on the Application Icon to start the request process

Now click on save to register a request for application assignment.

This will raise a request to provide “lifetime” access to the user with the given custom attributes.

Configuring Connector Server

Connectors can be deployed in two ways:

  • Local connectors are deployed to a Cymmetri instance. This is the usual way how connectors are used. The connector is executed inside a Cymmetri instance, has the same lifecycle (start/stop), etc. Cymmetri can detect local connectors automatically and overall the connector management is easier.

  • Remote connectors are executed in a different process or on a different node than Cymmetri instance. Remote connectors are deployed to a connector server. There may be need to use a remote connector e.g. to access a file on a remote system (e.g. in case of CSV connector) or because of platform incompatibilities (e.g. .NET connectors)

Connector is not developed as local or remote. The placement of the connector is a deployment-time decision. There is just one connector package that can be deployed locally or remotely.

A connector server is required when a connector bundle is not directly executed within your application. By using one or more connector servers, the connector architecture thus permits your application to communicate with externally deployed bundles.

Connector servers are available for both Java and .NET.

A Java connector server is useful when you do not wish to execute a Java connector bundle in the same VM as your application. It may be beneficial to run a Java connector on a different host for performance improvements if the bundle works faster when deployed on the same host as the native managed resource. Additionally, one may wish to use a Java connector server under a Java remote connector server in order to eliminate the possibility of an application VM crash due to a fault in a JNI-based connector.

The use of .NET connector server is especially useful when an application is written in Java, but a connector bundle is written using C#. Since a Java application (e.g. J2EE application) cannot load C# classes, it is necessary to instead deploy the C# bundles under a .NET connector server. The Java application can communicate with the C# connector server over the network, and the C# connector server serves as a proxy to provide to any authenticated application access to the C# bundles deployed within the C# connector server.

Java Connector Server

Installing a Java Connector Server

Minimum Requirements:

  • Java 1.6 or later for 1.4.X.Y / Java 1.8 for 1.5.X.Y

  • Refer to your Java connectors to determine if there are any additional requirements

Create your execution environment

  • Download the Connector Server package

  • Unzip it in a directory of your choice (e.g. /usr/jconnserv) on the host where you wish to run the Java connector server

Test your execution environment

From the directory created above, run the Java connector server with no arguments to see the list of command-line options:

  • Linux / MacOS: ./bin/ConnectorServer.sh

  • Windows: \bin\ConnectorServer.bat

You should see the following output:

    Usage: 
           Main -run -properties 
           Main -setKey -key  -properties 
           Main -setDefaults -properties 

Configure your Java connector server

  • Run the connector server with the -setKey option as described above to set your desired key into your properties file

  • For all other properties (e.g. port), edit the conf/connectorserver.properties manually. The available properties are described in the connectorserver.properties file.

Running your Java connector server

Run the server by launching with the -run option:

  • Linux / MacOS: ./bin/ConnectorServer.sh -run -properties conf/connectorserver.properties

  • Windows: \bin\ConnectorServer.bat -run conf\connectorserver.properties

Installing Connectors on a Java Connector Server

To deploy a Java connector:

  • Copy the Java connector bundle jar file into the bundles directory in your Java connector server directory

  • If necessary, add to the classpath any 3rd party jars required by any Java connector

  • Restart the Java connector server

Using SSL to communicate with connector servers

The following steps are necessary to successfully communicate with a connector server using SSL:

  • Deploy an SSL certificate to the connector server's system.

  • Configure your connector server to provide SSL sockets.

  • Configure your application to communicate with the communicate with the connector server via SSL.

Configure your application to use SSL

Refer to your application manual for specific notes on how to configure connections to connector servers. You will need to indicate to your application that an SSL connection is required when establishing a connection for each SSL-enabled connector server.

Additionally, if any of the SSL certificates used by your connector servers is issued by a non-standard certificate authority, your application must be configured to respect the additional authorities. Refer to your application manual for notes regarding certificate authorities.

Java applications may solve the non-standard certificate authority issue by expecting that the following Java system properties are passed when launching the application:

  • javax.net.ssl.trustStorePassword For example, -Djavax.net.ssl.trustStorePassword=changeit

  • javax.net.ssl.trustStore For example, -Djavax.net.ssl.trustStore=/usr/myApp_cacerts

Or, instead, the non-standard certificate authorities may be imported to the standard ${JAVA_HOME}/lib/security/cacerts.

.NET Connector Server

Installing a .NET Connector Server

Minimum Requirements:

  • Windows Server 2003 or 2008

  • .NET Framework 3.5 or higher

  • Refer to your .NET connector to determine if there are any additional requirements

Execute ServiceInstall.msi. Just follow the wizard. It will walk you through the whole process step by step. Upon completion, the Connector Server will be installed as a windows service.

Configuring the .NET Connector Server

Start the Microsoft Services Console. Check to see if the Connector Server is currently running. If so, stop it. From a command prompt, set the key for the connector Server. This is done by changing to the directory where the connector server was installed (by default: \Program Files\Identity Connectors\Connector Server) and executing the following command:

ConnectorServer /setkey <newkey>

where <newkey> is the value for the new key. This key is required by any client that connects to this Connector Server.

Look through the configuration file and inspect all settings. The most common things to change would be the port, trace, and ssl settings.

Additional Notes about configuration

The port, address, and SSL settings are in the tag called AppSettings, and look like this:

<add key="connectorserver.port" value="8759" />
<add key="connectorserver.usessl" value="false" />

<add key="connectorserver.certificatestorename" value="ConnectorServerSSLCertificate" />
<add key="connectorserver.ifaddress" value="0.0.0.0" />

The port can be set by changing the value of connectorserver.port. The listening socket can be bound to a particular address, or can be left as 0.0.0.0. To setup to use SSL, you must set the value of connectorserver.usessl to true, and then set the value ofconnectorserver.certifacatestorename to your the certificate store name.

You will need to record for use later the following information regarding your connector server installation:

  • Host name or IP address

  • Connector server port

  • Connector server key

  • Whether SSL is enabled

Changing Trace Settings

Trace settings are in the configuration file. The settings look like this:

<system.diagnostics>
  <trace autoflush="true" indentsize="4">
     <listeners>
       <remove name="Default" />
       <add name="myListener" type="System.Diagnostics.TextWriterTraceListener"
  initializeData="c:\connectorserver2.log" traceOutputOptions="DateTime">        
         <filter type="System.Diagnostics.EventTypeFilter" initializeData="Information" />
       </add>
    </listeners>
  </trace>
</system.diagnostics>

The Connector Server uses the the standard .NET trace mechanism. For more information about the tracing options, see Microsoft's .NET documentation for System.Diagnostics.

The default settings are a good starting point, but for less tracing, you can change the EventTypeFilter's initializeData to "Warning" or "Error". For very verbose logging you can set the value to "Verbose" or "All". The amount of logging performed has a direct effect on the performance of the Connector Servers, so be careful of the setting.

Any configuration changes will require the connector server to be stopped and restarted.

Running the .NET Connector Server

The best way to run the Connector Server is as a Windows service. When installing, the Connector Server is installed as a Windows service. This should be fine for most installations.

If for some reason, this is not adequate, the connector server may be installed or uninstalled as a Windows service by using the /install or /uninstall arguments on the command line. To run the Connector Server interactively, issue the command:

ConnectorServer /run

Installing Connectors on a .NET Connector Server

To install new connectors, change to the directory where the Connector Server was installed, and unzip the zip file containing the connector there. Restart the Connector Server.

Running Multiple Connector Servers on the Same Machine

To install additional Connector Servers on the same machine, download the Connector Server zip file from the downloads section. Create a directory to install to, and unzip the file there. Edit the configuration file as described above ensuring that you have a unique port. You may also want to make sure that the trace file is different as well. You can then run the additional Connector Server interactively or as a service.

Adding Applications to be managed by Cymmetri

Accessing the Applications Menu

Applications menu in the administration page displays the various options pertaining to the Application Management processes.

Applications menu may be accessed by two ways -

Identity Hub

  1. Login as one of the following administrators - Organization Administrator, Domain Administrator, Application Administrator.

  2. Click on the Identity Hub icon on the left side bar.

  3. Click on the Applications text on the slide out bar.

Single Sign On Module

  1. Login as one of the following administrators - Organization Administrator, Domain Administrator, Application Administrator.

  2. Click on the Products menu icon on the left side bar.

  3. Click on the Single SignOn Module icon in the popup list.

4. Click on the Applications text on the slide out bar.

Understanding the applications supported by Cymmetri

Applications supported by the Cymmetri Identity platform fall majorly into three categories -

  1. Pre-configured Applications These are the applications that have already been configured by the Cymmetri Identity platform for provisioning on cloud or on-premises.

  2. Custom Applications for Provisioning These are the applications that you wish to manage through Cymmetri and support the generic connectors that the Cymmetri Identity platform provides.

  3. Custom Applications for Single SignOn only When you need to add an application for the purpose of performing only Single SignOn for them, Cymmetri provides the ability to add a custom application which may be configured for Single SignOn using the supported Single SignOn mechanisms.

Adding Application

Once you have chosen the application to be added from the above categories, you are ready to add a new application.

1. Click on the “Add New” button on the top-right corner in the Applications menu.

3. Now click on the tile shown in the list below to open the right slide out menu for renaming application as shown below.

4. Add your custom label (if you wish) in the text box and click on the “Add Application” button.

Conclusion

Application has been successfully added to your listing now. You may click on the configure now button to start configuring the application.

2. In the Add New Application screen, you may search for your desired application (e.g., Active Directory), or your desired connector (e.g., REST) or choose the “Custom” application type from the available application catalogue.

1.3.3.1
1.4.5.1
1.5.0.1
1.5.1.0

LDAP Provisioning

Integration with LDAP

  1. For LDAP connector integration we need an LDAP server with the following detail sample.

    Host/IP

    LDAP Base Context

    service user (Manager Username)

    password (Manager User password)

  2. Check policy map to add proper attributes as needed by LDAP schema.

After configure LDAP server we need to configure the Ldap application into the Cymmetri.

SCIM 2.0 with Bearer Authentication

  1. Any application which supports SCIM v2.0 with bearer token is workable for application.

  2. Following are configuration which is used for SCIM with bearer.

    1. Base address - It is the endpoint of the target system which supports SCIM v2 API’s.

    2. Username - Username to authenticate SCIM API endpoint.

    3. Password - Password to authenticate SCIM API endpoint.

    4. Security Token - It is a token which is used to authenticate.

    5. Grant Type - It is grant type which is used to grant access for API’s.

    6. Client Id - client id for authentication

    7. Client Secret - client secret for authentication

    8. Authentication type - It is Fixed Bearer compulsory.

    9. Update method - Patch or Put method.

    10. Accept - Http header which accepts (application/json etc).

    11. Content Type - Http header which accepts (application/json etc).

    12. Access Token Base Address - base address for access token

    13. Access Token Node Id - node id for access token

    14. Access Token Content Type - content type for access token.

Powershell Provisioning

Integration with Powershell

  1. For the powershell connector we need a windows server machine with a connId server on it.

  2. Configure powershell connector with following properties

  3. Must configure powershell script with valid data using the reference below

Reference:

https://drive.google.com/drive/folders/1XHt6aNmPzs7V7OKesk31FwqLxGf3u2ST?usp=sharing

Configure OpenID Connect based Single SignOn

To use this mechanism ensure that the managed application supports authentication using OpenID Connect 1.0 protocol.

OpenID Connect 1.0 is a simple authentication layer protocol built on top of OAuth 2.0 protocol. It acts as a Single SignOn mechanism and authentication mechanism for not only the Web based applications, as SAML 2.0 does, but also for applications requiring access to APIs protected by this protocol as an authorisation mechanism, and for mobile-native or Single page Applications (SPA) to verify user’s identity.

For understanding the core concepts of the OpenID Connect 1.0 protocol, it is important to grab the basics of the underlying OAuth 2.0 protocol.

Glossary of terms used in OAuth 2.0 and OpenID Connect 1.0 protocols

  1. Client (RP) - Client refers to the managed application to which the end-user wishes to perform Single SignOn into. The client in the context of the OAuth 2.0 and OpenID Connect 1.0, is also referred to as the Relying Party (RP), since it relies on the Authorisation Server

    1. Client ID - Client ID is the unique identifier assigned to each managed application while configuring the application for OpenID Connect 1.0 or OAuth 2.0 flow.

    2. Client Secret - This is a secret value that is shared between the relying party and the Authorisation server, so that they may communicate and be always assured that the communication shared was actually sent by the other node in the communication.

  2. Cymmetri Identity Platform - Cymmetri Identity platform in the context of OpenID Connect 1.0 Single SignOn mechanism acts as two components in the OAuth 2.0 and OpenID Connect 1.0 flows. These component roles are explained below.

    1. OpenID module (Authorisation Server) - Since the Cymmetri Identity platform acts as an Identity platform, it holds the capability to ensure that user session is valid, the user is authorised to access the managed application, among other authorisation decisions, it plays the role of Authorisation server in the OpenID Connect 1.0 process.

    2. User Management Module (Resource server) - Since the Cymmetri Identity platform acts as a user identity hub, it holds the capability to store and provide user information to a managed application for the purpose of authentication and Single SignOn, it plays the role of Resource server (Resource, being the user information) in the OpenID Connect 1.0 process.

  3. User (Resource Owner) - The user information to be shared for a successful authentication is the resource in the OpenID Connect 1.0 flow, therefore, in the OAuth 2.0 terms, the user information is the resource, and the end-user is the resource owner.

  4. OpenID Authorisation Endpoint - Authorization endpoint is used for accepting authentication/authorization requests in the form of redirected requests with the OpenID request query parameters added to it.

  5. OpenID Token Endpoint - Token endpoint is used for generating Access and ID tokens by using the authorisation code received by the managed application (Relying Party).

  6. User Information Endpoint - User information endpoint may be invoked by using the token shared to the managed application from the Cymmetri Identity platform, it will provide a list of all the user information that the user has consented to share with the end-application.

  7. Token Introspection Endpoint - Token introspection endpoint is used when the relying party is an API client that requires access to the APIs protected by the OpenID Connect deployment. It will verify whether the access token is still valid and well-formed.

  8. Redirect URIs - These are callback resources on the managed application, that can receive the messages sent from the Authorisation provider (Cymmetri Identity platform).

  9. Scope - These are parameters used to indicate what information related to the user can be shared to the managed application.

  10. State - This is a random string generated by the Relying party (managed application) to ensure that the message sent back by the Cymmetri platform is a response for the request raised by it for Single SignOn.

  11. Nonce - This is a random string generated by Relying party (managed application) to ensure that the message sent back by the Cymmetri platform is a response for the request raised by it for Single SignOn and to prevent replay attacks.

  12. Access Token - Access token is generated by the Cymmetri Identity platform for the purpose of authorising a client (whether an end-user OR an application using OpenID Connect). This may be verified for the purpose of ensuring the validity of the access token by the client requesting the token.

  13. ID Token - The ID token is generated by the Cymmetri Identity platform for the purpose of authenticating an end-user using OpenID Connect protocol. Typically, the subject name and the email Address are shared as a part of this ID token along with any nonces or states used in the protocol are shared. This ID token may be used to get more information using the User Information Endpoint.

  14. Authorisation Code - This is a string generated by the Cymmetri Identity platform for the purpose of server-to-server communication between the Relying party (managed application) and the Authorisation provider (Cymmetri Identity Platform). It may be exchanged by the relying party for the purpose of obtaining access and ID tokens.

Understanding OpenID Connect Flows

Common Use Cases for OpenID Connect 1.0

  1. For performing Single SignOn with managed applications that have a backend (Typical Web Application SSO)

  2. For performing Single SignOn with managed applications that do not have a backend (Single Page Applications and mobile-native applications)

  3. For authorising access to REST APIs by verifying that the client making the calls has the requisite access.

Commonly Used OpenID Connect 1.0 flows

1. Authorisation Code Grant Type Flow

Typically used in the same scenario as the SAML 2.0 flow, it is used when the Identity provider and the Managed application are both capable of having a separate frontend and backend. These backends can have back-channel communication that is secure and cannot be modified or viewed in transit. This is therefore typically used when full-blown web applications are available.

2. Implicit Grant Type Flow

Typically used when the managed application is a simple Single Page application or a mobile native application that may not be able to use back-channel secure communication and a shared secret may not be used for authenticating the managed application to the Identity provider.

3. Client Credentials Type Flow

Typically used when a user is not involved and there is no need for ID tokens. The managed application handles its own authentication or is operating as a backend service only and needs to access a resource protected by the Identity provider.

Configuring and Managing OpenID Connect flow for Authorisation Code Grant Type

Understanding the Authorisation Code Grant Type

Flow Diagram

Flow Explained

  1. User requests to access the application.

  2. The managed application generates a random string each for state and nonce for starting the OpenID flow; and set these as the cookies for the user browser.

  3. The Cymmetri Identity platform frontend will generate authorization request with the client_id, state, nonce, redirect_uri, response_type expected, and the scopes requested by the application.

  4. The request will be verified by the OpenID service in the Cymmetri Identity platform backend.

  5. Redirect the user to the login flow page, and initiate the login challenge-response flow.

  6. Login Challenge sent by the OpenID service to the frontend.

  7. Login session of the end-user is verified by the user service.

  8. Once the login session is verified, the frontend service responds back to the OpenID service with the challenge sent to it, to complete the login challenge-response flow.

  9. The openID service sets a login_verifier nonce as a cookie.

  10. The frontend replays the authorization request to the openID service with the login_verifier nonce to initiate the consent flow.

  11. The OpenID service validates the login_verifier nonce. If successful, then the OpenID service will redirect the end-user to the consent flow page.

  12. The frontend would then load the consent page with the scopes expected by the managed application, as reflected in the configuration.

  13. The end user must then provide the consent for the scopes to share the relevant data to the managed application.

  14. The challenge-response for consent flow is sent to the OpenID service with the scopes accepted by the end-user.

  15. The OpenID service will set a cookie on the user’s browser with a consent verifier nonce.

  16. The frontend replays the authorization request to the openID service with the consent_verifier nonce.

  17. If the response was accepted by the Consent flow, then an authorization code will be sent to the frontend.

  18. The Cymmetri frontend will then redirect the user to the “redirect_uri” of the managed application with the authorization code, state, and the nonce will be sent as query parameters.

  19. The managed application will verify the state and the nonce shared in step 2.

  20. The managed application will then make a POST API request to the Token API of the Cymmetri OpenID service to exchange the authorization_code with the ID token and the Access token.

  21. If this authorization_code is validated by the OpenID service, the managed application will receive the ID token and the Access token.

  22. The managed application may simply use the ID token to get the username and email address of the user and attempt to generate a session.

  23. If more user information is needed and the profile scope was consented by the user, then the managed application may make a call to the User Information endpoint of the OpenID service using the “access token” received in step 21.

  24. This user information may also be used by managed application to generate a user session.

  25. Once the user session is created, the managed application sets the session cookie on the user browser, and redirects the user to the managed application landing page.

Configuring the Authorisation Grant Type in the Cymmetri Identity platform

First, we need to add the managed application into the Cymmetri Identity platform deployment.

Enable the Single SignOn by -

  1. Clicking on the SignOn link on the left side menu

  2. Clicking the toggle button on the right side.

  3. The application URL text box may be left empty OR an endpoint from the managed application may be added that can initiate the OpenID flow by making a call to the OpenID service of the Cymmetri Identity platform deployment.

Select the OpenId/OAuth radio button to start configuring OpenID flow

Click on the dropdown for Advanced Settings (OpenID)

Main Dropdown Settings

  1. Client ID - Refers to the client_id to be sent to the managed application.

  2. Client Name - User friendly name for the client.

  3. Client Secret - Can be left blank. After saving the configuration, a popup will show the generated client secret.

  4. Redirect URLs - Refers to the endpoint on the managed application, that acts as a callback URL.

Access Dropdown Settings

Scope Settings

Scopes are used to track the consents of the end-users. This is used to determine what information the end-user wishes to share with the managed application.

Let us understand the scopes in play here -

  1. openid - As we wish to support OAuth 2.0 flows as well, the openid scope is optional. However, since we are dealing with OpenID Connect flow here, openid scope is mandatory for this flow.

  2. email - User’s email address is shared with the managed application.

  3. address - User’s address fields are shared with the managed application.

  4. phone - User’s phone number and mobile number fields are shared with the managed application.

  5. profile - Shares the entire list of user attributes with the managed application.

  6. offline_access - <added for future-proofness, not yet implemented>

The ‘openid’ scope is mandatory for this flow.

The ‘offline_access’ scope is not currently used by the Cymmetri Identity platform deployment.

Other profiles are optional.

Providing ‘profile’ scope overrides the settings for the ‘email', ‘address’ and ‘phone’ scopes.

Grant Type setting lets the Cymmetri Identity platform know which flow you wish to opt for -

  • Authorization Code refers to the current flow.

  • Refresh Token has not been implemented currently for the Cymmetri Identity platform.

Since this flow requires sharing the authorization code, and NOT the ID token, we may choose “code” as a response type.

The managed application is expected to mention using query parameters while starting the OpenID Connect flow to mention which response type it is expecting from the Cymmetri Identity platform.

While, we have chosen code as our return type, we could choose any other response type that also includes code return type.

Public subject type setting is used, since it is the most common mechanism for OpenID connect flows.

Pairwise Mechanism may be supported upon request. Please contact Cymmetri Support team in case your application needs support for pairwise subject type.

This indicates the manner in which the response (access token or ID token) is shared back by the Cymmetri Identity platform to the managed application.

  1. Client Secret over HTTP basic - Shared as a query parameter or a fragment to the managed application through an HTTP redirect.

  2. Client Secret over HTTP POST - Shared as a part of the response body to a REST endpoint exposed by the managed application through a POST Request.

  3. Private key JWT - Share JWT instead of opaque access tokens. This is no longer considered safe and other options are preferred.

No Authentication as a response type is not to be used in the OpenID Connect flow.

The current flow uses redirections to share credentials and involves user interaction. So we choose to use “Client Secret over HTTP Basic” as the response type setting for this flow.

Configuring and Managing OpenID Connect flow for Implicit Grant Type

Understanding the Implicit Grant Type

Flow Diagram

Flow Explained

  1. User requests to access the application.

  2. The managed application generates a random string each for state and nonce for starting the OpenID flow; and set these as the cookies for the user browser.

  3. The Cymmetri Identity platform frontend will generate authorization request with the client_id, state, nonce, redirect_uri, response_type expected, and the scopes requested by the application.

  4. The request will be verified by the OpenID service in the Cymmetri Identity platform backend.

  5. Redirect the user to the login flow page, and initiate the login challenge-response flow.

  6. Login Challenge sent by the OpenID service to the frontend.

  7. Login session of the end-user is verified by the user service.

  8. Once the login session is verified, the frontend service responds back to the OpenID service with the challenge sent to it, to complete the login challenge-response flow.

  9. The openID service sets a login_verifier nonce as a cookie.

  10. The frontend replays the authorization request to the openID service with the login_verifier nonce to initiate the consent flow.

  11. The OpenID service validates the login_verifier nonce. If successful, then the OpenID service will redirect the end-user to the consent flow page.

  12. The frontend would then load the consent page with the scopes expected by the managed application, as reflected in the configuration.

  13. The end user must then provide the consent for the scopes to share the relevant data to the managed application.

  14. The challenge-response for consent flow is sent to the OpenID service with the scopes accepted by the end-user.

  15. The OpenID service will set a cookie on the user’s browser with a consent verifier nonce.

  16. The frontend replays the authorization request to the openID service with the consent_verifier nonce.

  17. If the response was accepted by the Consent flow, then an authorization code will be sent to the frontend.

  18. The Cymmetri frontend will then redirect the user to the “redirect_uri” of the managed application with the access token, ID token, state, and the nonce will be sent as query parameters.

  19. The managed application may simply use the ID token to get the username and email address of the user and attempt to generate a session.

  20. If more user information is needed and the profile scope was consented by the user, then the managed application may make a call to the User Information endpoint of the OpenID service using the “access token” received in step 21.

  21. This user information may also be used by managed application to generate a user session.

  22. Once the user session is created, the managed application sets the session cookie on the user browser, and redirects the user to the managed application landing page.

Configuring the Implicit Grant Type in the Cymmetri Identity platform

First, we need to add the managed application into the Cymmetri Identity platform deployment.

Enable the Single SignOn by -

  1. Clicking on the SignOn link on the left side menu

  2. Clicking the toggle button on the right side.

  3. The application URL text box may be left empty OR an endpoint from the managed application may be added that can initiate the OpenID flow by making a call to the OpenID service of the Cymmetri Identity platform deployment.

Select the OpenId/OAuth radio button to start configuring OpenID flow -

Click on the dropdown for Advanced Settings (OpenID)

Main Dropdown Settings

  1. Client ID - Refers to the client_id to be sent to the managed application.

  2. Client Name - User friendly name for the client.

  3. Client Secret - Can be left blank. After saving the configuration, a popup will show the generated client secret.

  4. Redirect URLs - Refers to the endpoint on the managed application, that acts as a callback URL.

Access Dropdown Settings

Scope Settings

Scopes are used to track the consents of the end-users. This is used to determine what information the end-user wishes to share with the managed application.

Let us understand the scopes in play here -

  1. openid - As we wish to support OAuth 2.0 flows as well, the openid scope is optional. However, since we are dealing with OpenID Connect flow here, openid scope is mandatory for this flow.

  2. email - User’s email address is shared with the managed application.

  3. address - User’s address fields are shared with the managed application.

  4. phone - User’s phone number and mobile number fields are shared with the managed application.

  5. profile - Shares the entire list of user attributes with the managed application.

  6. offline_access - <added for future-proofness, not yet implemented>

Grant Type setting lets the Cymmetri Identity platform know which flow you wish to opt for -

Implicit refers to the current flow.

Refresh Token has not been implemented currently for the Cymmetri Identity platform.

Since this flow requires sharing the ID token directly along with access token, we may choose “id_token” or “id_token token” as a response type.

The managed application is expected to mention using query parameters while starting the OpenID Connect flow to mention which response type it is expecting from the Cymmetri Identity platform.

While, we have chosen 'id_token token' as our return type, we could choose any other response type that also includes both of these return types.

Public subject type setting is used, since it is the most common mechanism for OpenID connect flows.

Pairwise Mechanism may be supported upon request. Please contact Cymmetri Support team in case your application needs support for pairwise subject type.

Credential Dropdown Settings

  1. Client Secret over HTTP basic - Shared as a query parameter or a fragment to the managed application through an HTTP redirect.

  2. Client Secret over HTTP POST - Shared as a part of the response body to a REST endpoint exposed by the managed application through a POST Request.

  3. Private key JWT - Share JWT instead of opaque access tokens. This is no longer considered safe and other options are preferred.

No Authentication as a response type is not to be used in the OpenID Connect flow.

The current flow uses redirections to share credentials and involves user interaction. So we choose to use “Client Secret over HTTP Basic” as the response type setting for this flow.

Configuring and Managing OpenID Connect flow for Client Credentials Grant Type

Understanding the Client Credentials Grant Type

Flow Diagram

Flow Explained

Generating Access Token for the Managed Application

  1. OpenID service shares client ID, client secret, and audience to the managed application during the configuration phase.

  2. The managed application makes a POST request to the token API of the OpenID service with the previously shared clientID, client secret, the audience string, and the grant_type as “client_credentials”.

  3. The OpenID service validates the combination of (client_id, client_secret, and audience) and generates an access token to be shared to the managed application with an expiry time (in seconds).

  4. The managed application should then verify the access token received by calling the token introspection endpoint.

Using the Access token to access protected API resource

  1. The managed application should first request an access token as discussed above.

  2. The managed application may then attempt to access the protected resource by sharing the client_id and authenticate the request using Bearer token as the access_token.

  3. The protected resource may then validate the access token shared by calling the token introspection and validate that the client_id shared by the managed application in step 2 matches the client_id for which the access_token was generated, and that the token has not expired.

  4. If the validation in step 3 is successful, the protected resource will be shared to the managed application.

Configuring the Client Credentials Grant Type in the Cymmetri Identity platform

First, we need to add the managed application into the Cymmetri Identity platform deployment.

Enable the Single SignOn by -

  1. Clicking on the SignOn link on the left side menu

  2. Clicking the toggle button on the right side.

  3. The application URL text box may be left empty for this flow, since the user does not need to be involved with this flow.

Select the OpenId/OAuth radio button to start configuring OpenID flow -

Click on the dropdown for Advanced Settings (OpenID)

Main Dropdown Settings

  1. Client ID - Refers to the client_id to be sent to the managed application.

  2. Client Name - User friendly name for the client.

  3. Client Secret - Can be left blank. After saving the configuration, a popup will show the generated client secret.

  4. Redirect URLs - Refers to the endpoint on the managed application, that acts as a callback URL.

  5. Audience - This audience needs to be shared by the managed application, and the Cymmetri Identity platform will validate it for providing access token.

Access Dropdown Settings

Scope Settings

Scopes are used to track the consents of the end-users. This is used to determine what information the end-user wishes to share with the managed application.

Let us understand the scopes in play here -

  1. openid - As we wish to support OAuth 2.0 flows as well, the openid scope is optional. However, since we are dealing with OpenID Connect flow here, openid scope is mandatory for this flow.

  2. email - User’s email address is shared with the managed application.

  3. address - User’s address fields are shared with the managed application.

  4. phone - User’s phone number and mobile number fields are shared with the managed application.

  5. profile - Shares the entire list of user attributes with the managed application.

  6. offline_access - <added for future-proofness, not yet implemented>

Grant Type setting lets the Cymmetri Identity platform know which flow you wish to opt for -

Authorization Code refers to the current flow.

Refresh Token has not been implemented currently for the Cymmetri Identity platform.

Since this flow requires sharing the access token, and NOT the ID token, we may choose “code” as a response type.

The managed application is expected to mention using query parameters while starting the OpenID Connect flow to mention which response type it is expecting from the Cymmetri Identity platform.

While, we have chosen code as our return type, we could choose any other response type that also includes code return type.

Public subject type setting is used, since it is the most common mechanism for OpenID connect flows.

Pairwise Mechanism may be supported upon request. Please contact Cymmetri Support team in case your application needs support for pairwise subject type.

Credential Dropdown Settings

  1. Client Secret over HTTP basic - Shared as a query parameter or a fragment to the managed application through an HTTP redirect.

  2. Client Secret over HTTP POST - Shared as a part of the response body to a REST endpoint exposed by the managed application through a POST Request.

  3. Private key JWT - Share JWT instead of opaque access tokens. This is no longer considered safe and other options are preferred.

No Authentication as a response type is not to be used in the OpenID Connect flow.

The current flow has API exchange of tokens and validations. So we choose to use “Client Secret over HTTP POST” as the response type setting for this flow.

This indicates the manner in which the response (access token or ID token) is shared back by the Cymmetri Identity platform to the managed application.

This indicates the manner in which the response (access token or ID token) is shared back by the Cymmetri Identity platform to the managed application.

REST Connector Provisioning

Integration REST Application

  1. The REST connector is designed to manage provisioning by relying on RESTful service.

  2. For REST applications we need target applications which support REST API’s.

  3. Following configuration is tested for felicity application.

  4. We need REST API’s to integrate with cymmetri.

  5. Following are the cymmetri configuration which need to configure in user configuration in cymmetri.

  6. It is Basic REST configuration which need to configure in application.

  1. We need to provide Groovy code to run create user, update user, delete user and also recon pull and push (for recon pull we need to add sync script and for recon push we need to add search script)

  2. For sample script please validate following link

Note: Please Configure script step by step

  1. Configure test script at initial step and then test configuration for provided script (If configure successfully then only go for step b).

  2. Configure create script and test configuration (If successfully configured then only go for step c).

  3. Configure update script and test configuration (If successfully configured then only go for step d).

  4. Configure delete script and test configuration (If successfully configured then only go for step e).

  5. Configure sync(pull) script and test configuration (If successfully configured then only go for step f).

  6. Configure search(push) script and test configuration (If successfully configured then only go to the next step).

Google Apps (Workspace) Provisioning

Google Apps is a software-as-a-service platform (SAAS) that provides email, calendar, documents and other services. This connector uses the Google Apps provisioning APIs to create, add, delete and modify user accounts and email aliases.

Please note that only the Premium (paid) or Educational versions of Google Apps provide access to the provisioning APIs.

Connector will not work on the free Google Apps Domain

  1. First obtain the client_secret.json file from your Google Apps instance -

  1. Click on Enable API and services

  2. Click on Admin SDK

  3. Click on Create Credentials

  4. Click on OAuth consent screen

  5. Click on edit app

  6. Enter details

  7. Click on credential

  8. Download OAuth client

Configure SAML 2.0 Single Sign On

To use this mechanism, please ensure that your managed application supports authentication using SAML 2.0 protocol acting as the Service Provider (SP).

SAML 2.0 is a primarily web-based Single SignOn mechanism that uses XML based messages exchanged between the authenticating party, referred to as the Identity Provider (IdP) in the SAML 2.0 terms, and the relying party, referred to as the Service Provider (SP) in the SAML 2.0 terms.

In the context of Cymmetri SAML 2.0 implementation, your Cymmetri Identity platform deployment acts as the Identity provider (IdP) and the application managed that the end-user wishes to access through Single SignOn acts as the Service Provider (SP).

The mechanisms within the SAML 2.0 protocol used for sharing Single SignOn messages are referred to as the SAML 2.0 bindings. While the SAML 2.0 and its predecessor SAML 1.1 support various bindings, the Cymmetri Identity platform supports the two most commonly used bindings for web applications - viz., HTTP POST Binding and HTTP Redirect Binding. These reflect the manner in which the requests and responses are shared between the Identity provider (Cymmetri platform) and the Service Provider (managed application).

HTTP Redirect Binding - The SAML Assertion messages (request and response XML messages) are shared as GET query parameters.

HTTP POST Binding - The SAML Assertion messages (request and response XML messages) are shared as POST body messages.

Additionally, there are two flows in which SAML 2.0 Request-Response cycle may be accomplished.

  1. Service Provider initiated flow (SP initiated flow)

  2. Identity Provider initiated flow (IdP initiated flow)

At this stage, to start the configuration of the managed application for SAML 2.0 based SignOn mechanism, we must identify the supported flow for the managed application.

Let us explore what both of these flows mean and how to configure your managed application to use them.

Service Provider initiated flow (SP initiated flow)

Description

The SAML 2.0 Service Provider Initiated flow indicates that the Service provider (in our case, this would be the managed application to which the end-user wishes to perform Single SignOn into) has started the SAML 2.0 Single SignOn process by sending a SAML 2.0 request XML to the Cymmetri Identity platform. This is achieved by the user landing on the Single SignOn URL of the managed application.

In practice, however, since the user is typically on the Cymmetri Identity platform, we have enabled mechanisms to redirect the user to the Single SignOn URL of the managed application, when the user clicks on the application tile.

Flow Description

  1. User lands on the SSO URL page of the managed application. (This may be either through clicking on the application tile on the Cymmetri platform or by the user actually entering the SSO URL of the managed application in the browser address bar.)

  2. Managed application generates the SAML 2.0 request XML which holds the following important parameters - Request Id, Assertion Consumer Service URL (ACS), the protocol binding expected, and the Issuer of the request.

  3. A redirect is made to the page handling Single SignOn requests on the Cymmetri Identity platform (<baseurl-of-cymmetri-deployment/samlsrvc/SingleSignOnService>) with the request in base64 format as a query parameter.

  4. This page sends the SAML request body to the backend services of the Cymmetri platform to validate the request and to verify whether a session exists for a Cymmetri user in the current browser instance.

  5. If a session does not exist for any user, the user is asked to login into the Cymmetri Identity platform.

  6. If a session exists for the user, then the backend validates whether the user is authorised to access the application for which the SSO request has been initiated. (by checking whether the user is assigned the application.)

  7. The backend services of the Cymmetri Identity platform generates a SAML response XML body and send it as GET request query parameter (if the protocol binding expected in the SAML request is HTTP Redirect) or as a POST request body (if the protocol binding expected in the SAML request is HTTP POST binding) to the Assertion Consumer Service URL mentioned in the SAML Request body, with the SAML Response audience as the Issuer mentioned in the SAML request body, and a field “InResponseTo” as the Request ID from the SAML request body.

  8. The managed application would then validate the SAML response (and the signature, if was requested in the SAML request body).

  9. If the SAML Response body is not a valid SAML Response, then the user is redirected to the managed application’s error page.

  10. If the SAML response body is a valid SAML response, then the SAML assertion is extracted to obtain the user information sent by the Cymmetri Identity platform.

  11. If the user information is not valid, for any reason, then the corresponding error is displayed to the user by redirecting the user to the managed application’s error page.

  12. If all the user information is valid, the managed application initiates the user’s session in the managed application web portal, and corresponding session cookies are generated.

  13. Finally, the user is redirected from the application’s Assertion Consumer Service URL to the landing page of the managed application.

In case of any validation errors, please refer to the section explaining the error scenarios below and change the configuration in either the managed application or the Cymmetri application SignOn configuration page.

Configuring application to use Service Provider initiated flow

The configuration parameters mentioned in the information panel below are required to configure an application for Single SignOn using the Identity provider initiated flow in the Cymmetri Identity portal.

Prerequisites from the managed Application

  1. Request Issuer - This is the request issuer that would have been sent by the managed application in case this were a Service Provider initiated flow.

  2. Assertion Consumer Service URL - This is the URL to which the SAML response must be sent by the Cymmetri Identity platform.

  3. Expected NameID Policy - This indicates whether the managed application expects the user subject name to be sent as the Email Address, username, or some other unspecified value.

  4. Expected Signature Algorithm - The expected algorithm to be used for signing the responses and assertions.

First we create an application in our Cymmetri Identity platform as discussed in previous articles. Let us use this application example below. We have already enabled SignOn as discussed here.

Let us go ahead and click on the radio button to enable SAML 2.0 option.

Let us now click on the dropdown for “Advanced Settings (SAML 2.0)”.

Click on the “Download Metadata” button, it is to be used in future steps.

Click on the purple “Download Metadata” button, it should open up a new tab with the xml file.

Let us come back to the SAML 2.0 settings for our sample managed application in Cymmetri platform deployment

Let us start entering the fields one by one.

SAML Type - We select the “SP_INITIATED” from the dropdown.

Since the metadata downloaded from the test app does not indicate the use of a particular signature algorithm, let us simply use “RSA_SHA256”.

Further, we need to select NameID Format. Referring to the highlighted portion in the metadata downloaded from the sample application, we find two supported NameID formats -

  1. unspecified - This is a generic and default selection of NameID format, typically this would mean that the Cymmetri Identity platform may send any user attribute, which can be selected further. The managed application must handle it accordingly. This will be used whenever some custom or unusual user attribute is to be passed to the managed application.

  2. email - This indicates to the managed application, that the Identity Provider (Cymmetri Identity Platform) will be sending the end-user’s email address, and that the managed application must handle it accordingly.

We see three other NameID formats in the dropdown, let us understand them one-by-one.

NameID Formats explained

  1. transient - This is used as a NameID format when we wish to indicate to the managed application, that the end-user’s details sent during the SAML 2.0 process is in fact not permanent, but may change for the period of the end-user’s identity lifecycle.

  2. persistent - This is used as a NameID format when we wish to indicate to the managed application, that the end-user’s details sent during the SAML 2.0 process is permanent, and will remain the same for the period of the end-user’s identity lifecycle.

  3. username - This is used as a NameID format when we wish to indicate to the managed application, that we will be sharing the end-user’s username from Cymmetri Identity Provider to the managed application during the SAML 2.0 process.

Let us select email as the NameID format for now.

Let us now discuss NameID Values

There are two scenarios here -

  1. Choosing NameID format as “username” and “email” - The value of the NameID Value will not matter, the end-user’s username or email address will be shared to the managed application.

  2. Choosing NameID format as “unspecified”, “transient”, and “persistent” - The value of the NameID value will allow for a particular value of the User object to be shared to the managed application.

Possible Values of NameID Value are - email, mobile, firstName, lastName, displayName, loginId.

Let us select email as a NameID value, however, it will not affect the configuration.

For configuring the “Request Issuer”, let us refer back to the downloaded saml-metadata.xml from the demo application.

We use the entityID from the downloaded metadata as the Request Issuer

Please note that the Request Issuer field is how the Cymmetri Identity platform identifies the managed application from the SAML Request sent by the managed application. Please ensure that the request issuer is unique across the deployment.

For the Assertion Consumer Service URL, we once again refer to the downloaded XML,

Finally, we refer to the downloaded XML one last time, for deciding upon the toggle buttons -

Here we see the managed demo application, requires only the Assertions to be signed and not the Authentication requests, we define the toggle switches accordingly.

Upload the metadata we downloaded from the Cymmetri Identity Platform configuration.

Hit the “Submit File” button to store the Identity provider metadata in the application.

Now copy the managed application’s Single SignOn URL from the popup as shown below -

Enter this URL into the SignOn configuration of the managed application on the Cymmetri Identity portal.

Click the “Save” button.

Testing the Service Provider initiated flow

Now that both sides are configured, let us test the flow by assigning the application to the current user.

Click on the “My Access” menu on the left sidebar under the “My Workspace” section.

Let us click on the application tile we created for the managed application demo.

We will now be redirected a few times and finally should land on the page below -

Identity Provider initiated flow (IdP initiated flow)

Description

The SAML 2.0 Identity Provider Initiated flow indicates that the Identity provider (in our case, this would be the Cymmetri Identity platform) has started the SAML 2.0 Single SignOn process by sending an unsolicited SAML 2.0 response XML to the Cymmetri Identity platform. This is achieved by the user clicking on the managed application tile in their workspace.

Flow Description

  1. The user clicks on the application tile, which sends a request to the Cymmetri Identity platform backend to initiate the SAML 2.0 SignOn process.

  2. The backend validates whether the user is authorised to access the application for which the SSO request has been initiated. (by checking whether the user is assigned the application.)

  3. The backend services of the Cymmetri Identity platform generates a SAML response XML body and send it as GET request query parameter (if the protocol binding expected in the SAML request is HTTP Redirect) or as a POST request body (if the protocol binding expected in the SAML request is HTTP POST binding) to the Assertion Consumer Service URL mentioned in the SAML Request body, with the SAML Response audience as the Issuer mentioned in the SAML request body, and a field “InResponseTo” as the Request ID from the SAML request body.

  4. The managed application would then validate the SAML response (and the signature, if was requested in the SAML request body).

  5. If the SAML Response body is not a valid SAML Response, then the user is redirected to the managed application’s error page.

  6. If the SAML response body is a valid SAML response, then the SAML assertion is extracted to obtain the user information sent by the Cymmetri Identity platform.

  7. If the user information is not valid, for any reason, then the corresponding error is displayed to the user by redirecting the user to the managed application’s error page.

  8. If all the user information is valid, the managed application initiates the user’s session in the managed application web portal, and corresponding session cookies are generated.

  9. Finally, the user is redirected from the application’s Assertion Consumer Service URL to the landing page of the managed application.

Configuring application to use Identity Provider initiated flow

The configuration parameters mentioned in the information panel below are required to configure an application for Single SignOn using the Identity provider initiated flow in the Cymmetri Identity portal.

Prerequisites from the managed Application

  1. Request Issuer - This is the request issuer that would have been sent by the managed application in case this were a Service Provider initiated flow.

  2. Assertion Consumer Service URL - This is the URL to which the SAML response must be sent by the Cymmetri Identity platform.

  3. Expected NameID Policy - This indicates whether the managed application expects the user subject name to be sent as the Email Address, username, or some other unspecified value.

  4. Expected Signature Algorithm - The expected algorithm to be used for signing the responses and assertions.

First we create an application in our Cymmetri Identity platform as discussed in previous articles. Let us use this application example below. We have already enabled SignOn as discussed here.

Identity Provider initiated flow is a subset of the Service Provider initiated flow. Some steps are similar if you have already configured the Service Provider initiated flow.

Let us go ahead and click on the radio button to enable SAML 2.0 option.

Let us now click on the dropdown for “Advanced Settings (SAML 2.0)”.

Click on the purple “Download Metadata” button, it should open up a new tab with the xml file.

Let us come back to the SAML 2.0 settings for our sample managed application in Cymmetri platform deployment

Let us start entering the fields one by one.

SAML Type - We select the “IDP_INITIATED” from the dropdown.

Since the metadata downloaded from the test app does not indicate the use of a particular signature algorithm, let us simply use “RSA_SHA256”.

Further, we need to select NameID Format. Referring to the highlighted portion in the metadata downloaded from the sample application, we find two supported NameID formats -

  1. unspecified - This is a generic and default selection of NameID format, typically this would mean that the Cymmetri Identity platform may send any user attribute, which can be selected further. The managed application must handle it accordingly. This will be used whenever some custom or unusual user attribute is to be passed to the managed application.

  2. email - This indicates to the managed application, that the Identity Provider (Cymmetri Identity Platform) will be sending the end-user’s email address, and that the managed application must handle it accordingly.

We see three other NameID formats in the dropdown, let us understand them one-by-one.

NameID Formats explained

  1. transient - This is used as a NameID format when we wish to indicate to the managed application, that the end-user’s details sent during the SAML 2.0 process is in fact not permanent, but may change for the period of the end-user’s identity lifecycle.

  2. persistent - This is used as a NameID format when we wish to indicate to the managed application, that the end-user’s details sent during the SAML 2.0 process is permanent, and will remain the same for the period of the end-user’s identity lifecycle.

  3. username - This is used as a NameID format when we wish to indicate to the managed application, that we will be sharing the end-user’s username from Cymmetri Identity Provider to the managed application during the SAML 2.0 process.

Let us select email as the NameID format for now.

Let us now discuss NameID Values

There are two scenarios here -

  1. Choosing NameID format as “username” and “email” - The value of the NameID Value will not matter, the end-user’s username or email address will be shared to the managed application.

  2. Choosing NameID format as “unspecified”, “transient”, and “persistent” - The value of the NameID value will allow for a particular value of the User object to be shared to the managed application.

Possible Values of NameID Value are - email, mobile, firstName, lastName, displayName, loginId.

Let us select email as a NameID value, however, it will not affect the configuration.

Let us select “Exclusive” as the Canonicalization Method. Reasons may be explained here in the SAML reference document.

For configuring the “Request Issuer”, let us refer back to the downloaded saml-metadata.xml from the demo application.

We use the entityID from the downloaded metadata as the Request Issuer

Please note that the Request Issuer field is how the Cymmetri Identity platform identifies the managed application from the SAML Request sent by the managed application. Please ensure that the request issuer is unique across the deployment.

For the Assertion Consumer Service URL, we once again refer to the downloaded XML,

Finally, we refer to the downloaded XML one last time, for deciding upon the toggle buttons -

Here we see the managed demo application, requires only the Assertions to be signed and not the Authentication requests, we define the toggle switches accordingly.

Click on the “Save” button.

Testing the Identity Provider initiated flow

Now that both sides are configured, let us test the flow by assigning the application to the current user.

Click on the “My Access” menu on the left sidebar under the “My Workspace” section.

Let us click on the application tile we created for the managed application demo.

We will now be redirected a few times and finally should land on the page below -

Possible Error Scenarios in Validation

Scenario 1: SAML request body does not meet the validation requirements for the SAML request.

Cause: Incorrect implementation of the SAML protocol by the managed application.

Fix: Verify that the SAML protocol is accurately implemented by the managed application.

Scenario 2: SAML request body does not have the same issuer as the configuration in the Cymmetri platform.

Cause: Incorrect configuration of SignOn on the Cymmetri platform for the managed application.

Fix: Change the request Issuer in the managed application configuration on the Cymmetri platform according to the Issuer field in the SAML request.

Scenario 3: SAML response body does not meet the validation requirements for the SAML response.

Cause: Incompatible expectations of the SAML 2.0 response body between the managed application and the Cymmetri Identity platform.

Fix: Connect with the Cymmetri Identity platform support team.

Scenario 4: SAML Response assertion has the incorrect audience.

Cause: Incorrect configuration of the request issuer field in the Cymmetri Identity platform for the managed application.

Fix: Verify and change the request issuer field in the managed application configuration on the Cymmetri platform according to the Issuer field in the SAML request.

Scenario 5a: User from the SAML Assertion is not valid.

Cause: Incorrect name ID format.

Fix: Verify and change the NameID format as expected by the managed application.

Scenario 5b: User from the SAML Assertion is not valid.

Cause: Incorrect user field in the assertion.

Fix: Verify that the right user field is selected as the “NameID Value” in the managed application configuration and Verify that the user information has the correct information as expected by the managed application in the field selected as the “NameID Value” in the managed application configuration on the Cymmetri platform.

Scenario 5c: User from the SAML Assertion is not valid.

Cause: User information is as expected but scenario 5b is not the cause.

Fix: Verify that the user information is present in the user database of the managed application. In case the managed application has JIT feature, ensure that the SAML attributes are correctly configured.

Configure SAML attributes

In case of default attributes, the user object already has the attributes, we just need to ensure that the right values are assigned to these attributes. In case of custom attributes, custom attributes must be added to your Cymmetri Identity platform deployment.

Cymmetri Attribute

Default / Custom

user.eduPersonPrincipalName

Custom

user.eduPersonTargetedID

Custom

user.displayName

Default

user.cn

Custom

user.givenName

Custom

user.sn

Custom

user.mail

Default

user.schacHomeOrganization

Custom

user.schacHomeOrganizationType

Custom

user.schacPersonalUniqueCode

Custom

user.eduPersonAffiliation

Custom

user.eduPersonScopedAffiliation

Custom

user.eduPersonEntitlement

Custom

user.eduPersonOrcid

Custom

user.isMemberOf

Custom

user.preferredLanguage

Custom

user.eckid

Custom

user.surfCrmId

Custom

user.uid

Default

user.login

Default

user.firstName

Default

user.lastName

Default

user.country

Default

user.countryCode

Default

user.city

Default

user.mobile

Default

user.address1

Default

user.address2

Default

user.managerId

Default

user.userType

Default

user.orgUnitId

Default

user.employeeId

Default

user.department

Default

user.designation

Default

user.status

Default

user.associatedPartner

Default

user.dateOfBirth

Default

user.landline

Default

Let us investigate how this works out in the SAML 2.0 process and how the data is received from the Cymmetri Identity platform.

Let us click on the “configure SAML attributes” link in the configuration page

On clicking the following should pop up

Let us add an attribute mapper as per the table defined above

We have added the First Name of the user from the Cymmetri Identity Platform to the managed Application as the key “First Name”.

Click on the save icon next to the delete icon (trash can icon).

Click on the “X” icon to close the attribute mapper.

Now once again go back to the “My Access” page and click the application tile.

Once we obtain the results after the redirections we should find the attributes sent to the managed application.

As is visible, the SAML response now holds the attributes as “First Name” and the “Last Name”.

Samples

SAML 2.0 Sample Request

SAML 2.0 Sample Response

Create Groups

Administrator tasks pertaining to bulk users may be eased by creating groups of users.

Creating User Groups

Access the group configuration page by clicking the Identity Hub menu on the left-hand side, and then clicking on the groups in the pop-up menu.

Group Name - Indicates the name of the group.

Group Type - For environments not using Active Directory, either Local or Remote Group may be chosen, in case Active Directory is being used for synchronization in the tenant, the appropriate type according to the group policy object must be chosen.

Parent Group - If a parent group is chosen, all the policies and rules applicable to the parent group will be assigned to this new group, in addition to the policies and rules specifically applied to this new group.

Group Description - Optionally, a description may be provided to the group.

SCIM v2.0 Provisioning with Basic Authentication

Integration SCIM v2.0 with Basic

  1. Any application which supports SCIM v2.0 with basic authentication is workable for application.

  2. Following are configuration which is used for SCIM with basic authenticator.

  1. Base address - It is the endpoint of the target system which supports SCIM v2 API’s.

  2. Username - Username to authenticate SCIM API endpoint.

  3. Password - Password to authenticate SCIM API endpoint.

  4. Authentication type - It is Fixed Bearer compulsory.

  5. Update method - Patch or Put method.

  6. Accept - Http header which accepts (application/json etc).

  7. Content Type - Http header which accepts (application/json etc).

Configuring Reconciliation Process

Once the applications have been configured to allow that the end-users have been provisioned into the managed application. We may now start configuring the reconciliation process for an application. The reconciliation process involves identifying the user attributes as stored in the Identity hub (Cymmetri Identity platform deployment) and their attributes as a user or a group account in the managed application; and the ensuring that the synchronization of the user and group accounts takes place either one-way or both ways between the managed application and the Identity hub, to ensure that there no discrepancies in the accounts stored by both the systems.

The reconciliation process may follow two strategies -

  1. Full Reconciliation Full reconciliation is typically carried out when the managed application is first introduced into an organization’s Cymmetri Identity platform deployment. This involves ensuring all user (and group accounts, where applicable) account from the Cymmetri Identity platform, are synchronized with the account information on the managed application. This often takes a longer time, and is often only used as a one-time activity.

  2. Filtered Reconciliation The Cymmetri identity platform and the managed application might lose synchronization due to a number of reasons, including backend changes to the user or group account information on the managed application or failure of communication between the identity platform and the managed application. In such cases, filtered reconciliation is employed on a regular, scheduled basis. This includes filters for a particular set of users, or to choose only the users that have been modified on either platforms, this is known as filtered reconciliation.

Cymmetri Identity platform allows for both types of reconciliation phases, by allowing administrator to define an optional user filter during the reconciliation process.

The reconciliation process involves two major processes -

  1. Pull In this mechanism, the Cymmetri Identity platform allows for user and group account information to be pulled from the managed application.

  2. Push In this mechanism, the Cymmetri Identity platform pushes the user and group account information to be pushed to the managed application.

Regardless of the process employed, the configuration for the most part remains the same. Let us explore the reconciliation configurations on the Cymmetri Identity Platform -

You may access the reconciliation menu by clicking on the application tile, and then clicking on the “Reconciliation” left-hand side menu bar.

Proceed to configure by clicking on the “+ Add New” button.

  1. Name - Refers to the name of the Reconciliation process

  2. Modes - FILTERED_RECONCILIATION (Currently the only mode supported by Cymmetri)

  3. Sync Fields - The field from the user/group’s account information as available on the Cymmetri Identity platform that must be used as a basis to identify the corresponding account on the managed application database.

  4. Source Attributes - The field from the user/group’s account information as available on the managed application database that must be used as a basis to match with the “Sync fields”.

  5. Status - Whether to run the reconciliation for Active/Inactive users.

  6. Type - Some applications allow GROUP reconciliation, but most will have USER reconciliation only.

Filled Reconciliation basic configuration looks as above.

Conditions indicate what happens when any of the following scenarios occur -

Let us assume we are synchronizing the Cymmetri Identity Platform with a cloud provider using email or mail attribute as the Sync field. As such users on both platforms having the same email address will be matched/un-matched.

Following are the scenarios managed by the Cymmetri platform -

  1. User does not exist in Target system & exists in Cymmetri This indicates a situation during a pull phase or a push phase, where the user account exists on the Cymmetri platform, but not in the managed application. This typically occurs when the users have been pulled into the Cymmetri platform, but the managed application is yet to be synchronized with these users.

  2. User exists in Cymmetri & Target system This indicates a situation during a pull phase or a push phase, where the user account exists on the Cymmetri platform and in the managed application, but they may or may not have the same attributes or the same values of the attributes.

  3. User exists in Target system & does not exist in Cymmetri This indicates a situation during a pull phase or a push phase, where the user account exists in the managed application database but not on the Cymmetri Identity platform. This typically occurs when the users have been pulled into the managed application through its backend and the users have not been centrally managed through the Cymmetri platform.

Conditions explained

  1. User does not exist in Target system & exists in Cymmetri

    1. PROVISION - User is created in the target system with the attributes as present in their Cymmetri user profile.

    2. IGNORE - User is not modified in either system.

    3. UPDATE - Not relevant for this scenario.

    4. DEPROVISION - User is removed from the Cymmetri Identity platform to be consistent with the managed application user database.

    5. UNASSIGN - Not relevant for this scenario.

    6. ASSIGN - User is assigned access to this system in Cymmetri, this option may be used in the case of options like JIT being available to generate user profile in the managed application.

    7. UNLINK - Not relevant for this scenario.

    8. LINK - Not relevant for this scenario.

  2. User exists in Cymmetri & Target system

    1. PROVISION - User is created in the target system with the attributes as present in their Cymmetri user profile.

    2. IGNORE - User is not modified in either system.

    3. UPDATE - User information from the Cymmetri Identity platform is updated using the account information from the managed application and vice versa.

    4. DEPROVISION - Not relevant for this scenario.

    5. UNASSIGN - Not relevant for this scenario.

    6. ASSIGN - User is assigned the managed application on the Cymmetri platform in case they are already not assigned.

    7. UNLINK - Not relevant for this scenario.

    8. LINK - Not relevant for this scenario.

  3. User exists in Target system & does not exist in Cymmetri

    1. PROVISION - User is created in the Cymmetri Identity platform deployment using the account information from the managed application.

    2. IGNORE - User is not modified in either system.

    3. UPDATE - Not relevant for this scenario.

    4. DEPROVISION - User is removed from the managed application user database.

    5. UNASSIGN - Not relevant for this scenario.

    6. ASSIGN - Not relevant for this scenario.

    7. UNLINK - Not relevant for this scenario.

    8. LINK - Not relevant for this scenario.

Scheduling the reconciliation Process

  1. Next Execution Date This indicates the base date to start the execution date and time of the reconciliation process.

  2. Cron Expression This indicates the frequency with which the further reconciliation events will be run. There are 6 fields here - * * * * * * (e.g., 5 15 0 1 8 *) ; they refer to seconds, minutes, hours, days, months, and year after the first execution date.

Github Provisioning

Github Enterprise provides provisioning using SCIM 2.0

Pre-requisites

  1. Create an account in Github (Enterprise).

  2. Enable SAML for the Github tenant to be used with Cymmetri.

Step 1. Configure SSO in Cymmetri

Note the application URL received from the Git SAML configuration

Continue the configuration by logging into Cymmetri using at least Application Administrator role

Note: Public certificate gets from SSO metadata(cymmetri) and format it using following

Note: Make sure when you test SAML then in cymmetri login with github admin users loginid which is added in cymmetri.

Configure Profile Mapping

Create User in Cymmetri and make sure login id of Cymmetri is same as gitHub Admin user login id.

Test SSO with the Cymmetri user.

  1. Configure SCIM v2.0 (Github) application from master (cymmetri).

  2. Basic provisioning policy attribute and policy map already aaded in default schema.

  3. Github Application is run using Fixed Bearer token.

  4. To get Fixed bearer token following steps used.

Step 1: Go to user settings in github

Step 2: Go to developer settings

Step 3: Go to personal access token and generate new token

Step4: Click on Configure SSO

Step 5: Click on Authorize

  1. Use following cymmetri provision configuration and change according to github account.

  2. Fixed Bearer Value copy from personal access token

  3. Click on save

  4. Click on Test Configuration with success message.

  5. Check Policy map

  6. Disable default for the respective attribute

Workflow Management

Workflows may be configured for a number of use cases in the Cymmetri Identity Platform, primary among them being for assigning application to a user (provisioning), unassigning application to a user (deprovisioning), and running reconciliation campaigns.

Configuring Workflows in Cymmetri Identity Platform

Workflows in Cymmetri Identity Platform may be configured for upto 4 stages of approval.

The administrator may select upto 4 approvers.

For each stage, the administrator may select one of the three options -

User - A particular user may approve workflow request at this stage.

Group - A user belonging to the selected Group may approve Workflow request at this stage.

Reporting Manager - The reporting manager of the user for which the approval is to be provided may approve the workflow request at this stage.

To observe how to workflow runs in action, refer Inbox

Importing Users

Users may be imported into the Cymmetri Identity Portal using the bulk import users option.

Importing Users

Administrator may go to the Identity Hub left hand side menu, then select users. Then click on the Import Users button on the right hand corner.

The results of the import and the reasons for failures if any will be shown as well.

Assigning Users to Groups

Assigning Users to a Group

Users once created in the Cymmetri Identity platform can be assigned to a group. Assigning users to a group helps ease the administrative efforts to apply the same policies and assigning applications to multiple users.

Adding User to Group

1. First the administrator needs to click on the group name and enter the configuration for the group.

Setting up permissions for Delegation

Delegation as a process in the Cymmetri Identity platform refers to the ability of any end-user to delegate their responsibilities to one or more end-users on the platform for whom they are marked as the reporting manager.

As such, delegation provides the ability to the delegatee to perform various actions, including Single Sign On, Application Requests, managing workflows by providing approvals, performing Cymmetri administrative actions (if the delegator has the required permissions on the platform), among other actions. However, the login flow for the delegatee stays the same. Configuring the delegation on your tenant

The user consent will be displayed whenever the delegator (user) will go to their settings in their Workspace and assign a delegation to an end-user (assignee) for whom they are a manager. This consent will be recorded in the Cymmetri backend for audit logging purpose. Similarly, the assignee consent will be recorded when the end-user (delegate/assignee) logs into the account for their manager (delegator/user).

Log in to your Google Apps Admin Console (at ) and verify that Security > Enable API access is checked.For more information on these APIs, navigate to the Google Developers interface, and search for these APIs.

In the OAuth 2.0 application of choice (at ), create credential of type Oauth Client ID / Other, then download the related client_secrets.json file.

Enter

Create New Project

Search API name

Click on Enable

Click on Credentials

Click on OAuth

Select application type Desktop

Download JSON

Click on save and update

Click on Internal

Search admin sdk and click

Select for group

Let us start by taking a demo application for the purpose of testing this functionality. We will be using a demo application provided by RSA labs - RSA SAML Test provider ( ).

Let us visit the link here to the demo application. []

Let us select “Exclusive” as the Canonicalization Method. Reasons may be explained in the SAML reference document.

Let us enter the Assertion Consumer URL as “

Let us return back to the managed demo application for completing the configuration on the Service provider side. [ ]

Let us visit the link here to the demo application. []

Let us enter the Assertion Consumer URL as “

Click on the “+Add New” button to start creating a new group

Click on save to save the workflow.

Upload the csv file, you may use the sample data file and modify it to match your user details.

Match the Column names from the CSV file with the Cymmetri User Attributes using this user import dialog box.

Scroll down and click the save button.

2. Now click on +Add Users button to add users to the group

3. Now click on the assign button next to the user you wish to add to the group.

Access the Delegation administration panel, by clicking on the Configuration left-hand side menu item and then click on the Delegations pop-up menu item.

Add Users who can delegate their activities by clicking on the Assign New button.

Personalize the messages to be displayed when consent is invoked

https://drive.google.com/drive/folders/1Vs8y1ZHXV3AjqsPkQSnwUoVppL-yc8Vl?usp=sharing
https://www.google.com/a/domain-name
https://console.developers.google.com
https://console.developers.google.com/
here
https://sptest.iamshowcase.com/acs”.
https://sptest.iamshowcase.com/acs”.
https://www.samltool.com/format_x509cert.php

Multifactor Authentication (MFA)

Multi-factor Authentication is a mechanism used across the Cymmetri Identity platform to deal with a second level authentication.

Typically employed using off-band mechanisms, Cymmetri allows flexibility by introducing both modern mechanisms, such as -

1. Time based OTP (through Cymmetri Authenticator mobile application)

2. Time based OTP (through Google Authenticator and other mobile application)

3. Push based Notification (through Cymmetri Authenticator mobile application)

4. SMS OTP

5. Email OTP

In this document, we will go through setting up the Multi-factor authentication options on the Cymmetri Identity Platform, and run through the setup of Multi-factor authentication options and their usage for the login scenario.

Setting up Multi-factor Authentication for the tenant

1. Access Multi-factor authentication by going to Products menu > Multifactor authentication product

2. Next, we select factors sub-menu

3. We now select the Cymmetri Authenticator (Time based OTP) toggle and click confirm to setup Cymmetri Authenticator as an MFA option

4. Similarly we toggle on the Push Notification and SMS Authenticator (OTP) options

5. Next we select the configuration sub-menu to configure the OTP options, here we will enable the Email OTP option by toggling it on.

6. Next we move to configure the rules for Multi-factor authentication policy for login

7. Click on the pencil icon to start editing the policy and change the dropdown of all factors to indicate that they are mandatory (required).

Let us talk about the options available for each factor -

Required - This setting means that the corresponding factor is required to be enabled for each user, and every user must set up this factor in their next login.

Optional - This setting means that the corresponding factor is not required to be enabled for each user, and they may configure this option from their "My Workspace". Once the user configures it, they may use it for the purpose of second level of authentication during authentication. Disabled - This settings means that the corresponding factor is not required or enabled for each user, and the user may not configure or use it for authentication into the Cymmetri platform.

8. Now click on the pencil icon in the upper box to toggle on this rule.

9. All subsequent logins of any user on the Cymmetri Identity platform will now require the use of mandatory MFA for one of these factors.

End user configuring Multi-factor authentication

Please download the Cymmetri Authenticator App from

1. Since all the multi-factor authentication options are made mandatory (required), the user is prompted to set up their Cymmetri Authenticator first.

2. Clicking on the icon shown below will prompt the setup of the Authenticator app

3. User may download the Cymmetri Authenticator app from Play Store or App Store and then scan the authorization QR code to setup the time-based OTP and enter the OTP received on the mobile app onto the UI.

4. Next, we are prompted to setup Push Authenticator as a multi-factor authentication option.

5. Similarly scanning the QR code received from the previous step after clicking "Push Authentication" link, will show the mobile characteristics on which the QR code is scanned from the Cymmetri Authenticator app.

End user using multi-factor authentication for logging onto the Cymmetri Platform

1. Upon entering their username and password, the user is prompted to perform multi-factor authentication

2. Choosing Cymmetri Authenticator will prompt the user to enter the six-digit OTP they have received on their Cymmetri Authenticator App

3. Choosing Push Authenticator will prompt the user via a push notification on their mobile device with the Cymmetri Authenticator app installed to accept/reject login request.

4. Finally, choosing SMS Authenticator will send an OTP on the user's registered mobile number and their e-mail Address since we have enabled "Receive OTP on email" toggle button.

SAML 2.0 Test Service Provider
SAML 2.0 Test Service Provider
SAML 2.0 Test Service Provider
SAML 2.0 Test Service Provider

1. Google Play Store - 2. iOS App Store -

https://play.google.com/store/apps/details?id=com.unotech.cymmetri&hl=en_IN&gl=US
https://apps.apple.com/in/app/cymmetri-authenticator/id1535591771

Add Branding to your tenant

The Cymmetri Identity platform allows a certain level of customization to your tenant from the administration panel. This includes the ability to modify the default Cymmetri branding scheme to your own Organization’s branding scheme).

  1. Your Organization Name and Tag line

  2. Your Organization logo

  3. Your Organization branding colors (Primary, Secondary, Accent Colors)

Configuring your tenant branding

  1. If your organization’s branding is available, the logo and the corresponding color scheme will be displayed in the menu below.

  2. If your branding is not available, you may configure it yourself by uploading your logo and editing your primary color, secondary color, and Accent color.

  3. The configuration will be applied in a few seconds to reflect your branding.

Masters in Cymmetri

Masters are key-value pairs that can be defined for the entire tenant. The key in this context refers to the label to be shown on the Cymmetri User Interface, and the value is the backend identifier used to reference this field in various processes, rules, and policies defined in the Cymmetri Identity platform deployment.

Cymmetri Identity platform allows for configuring a number of masters in the system, the major classification among which is Global masters (which allow for creating master key-value pairs that may be used for various situations, such as creating a new department, designation, and other custom attributes for users in the system) and Zone masters (which are network configurations that may be used to whitelist or blacklist user access onto the platform as well as act as a source for adaptive Multi-factor authentication).

Global masters

These are system-wide key value pairs primarily used to setup key value pairs referring to various masters as given below -

Types of Global masters

Country

Country key-value pairs are stored in the system, and are available as drop-downs wherever needed in the system - User attributes, Policies and other mappings.

UserType

UserType is used as one of the conditions while defining authentication policies and as an input in the rule engine.

Department

Department is used as one of the conditions while defining authentication policies and as an input in the rule engine, and also as a user attribute.

Designation

Designation is used as one of the conditions while defining authentication policies and as an input in the rule engine, and also as a user attribute.

GroupType

GroupType is used as one of the conditions while defining authentication policies and as an input in the rule engine, and also as a group attribute.

AccountStatus

AccountStatus is used as one of the conditions while defining authentication policies and as an input in the rule engine, and also as a user attribute.

RBAC

RBAC (System Roles) is used as one of the conditions while defining authentication policies and as an input in the rule engine, and also as a user attribute.

CustomAttribute

Custom Attributes are the custom attributes that are key-value pairs that can be directly accessed by various backend engines by referring to them as attributes of the user object.

ApplicationCOSO

Refers to the various COSO mapped to application roles for the purpose of Segregation of Duties. Typical values for these are “Admin”, “Maker”, “Checker” and “Readonly”.

Zone Masters

Zone masters indicate the network zones that may be used for blacklisting or whitelisting access to the Cymmetri Identity platform deployment. It may also be used for detecting users from certain zone and assign relevant multi-factor authentication policies.

Zone Name - Used to refer to a zone in other configurations on the Cymmetri Identity platform.

Inactive/Active - Toggle button to check whether the zone is active (configurable as a condition for other rules on the Cymmetri Identity platform.)

Gateway IP - Refers to the Gateway IP address for the network zone.

Proxy IPs - Proxy Server IP addresses that may be used to be directed to this network or the IP addresses outside of the zone that would indicate a connection from this zone.

Fill all the mandatory configurations, click on the enable toggle button and finally click a “Save” button.

Adding Custom Attributes for User Object

Custom attributes may be added for all user entities in your Cymmetri Identity Platform tenant. This allows organizations to add custom user attributes, that are used across the applications in your organization.

For example, your organization has a custom attribute that captures and uses the local language of your employees and vendors for the purpose of providing local services. This attribute may be stored in your Active Directory deployment, and may need to be synchronized to your organization’s other applications during the course of an employee or vendor’s employment.

Cymmetri Identity platform allows the administrator to define custom attributes on a tenant-wide level.

Configuring Custom Attributes

    1. Name/Key refers to the label assigned to the custom attribute on the Cymmetri Administration and Workspaces.

    2. Value refers to the variable name assigned to this custom attribute, when it needs to be referred to in the various configurations of the Cymmetri Identity portal, such as provisioning and reconciliation campaigns.

  1. Click on the Save button to save the new custom attribute.

Personalize Notification Templates

Notifications are triggered from the Cymmetri Identity platform tenant for various actions occuring on the platform either through direct action by the end-user or by the virtue of some backend action (such as running of a scheduler for a campaign). Cymmetri Identity platform ships with default notification templates that may be modified by the administrator using the following process.

  1. Values in <> anchor tags and ${} reflect macros.

  2. We may treat this template as an email, and edit the subject of the mail.

    By default, the email notification will be sent to the corresponding affected end-user, but selecting the toggle option for “Send notification to Reporting Manager” will also copy the mail to the Reporting manager of the affected end-user, allowing for offline followup for the notification.

  3. The administrator may edit the HTML using the provided HTML editor to add/change any template button/text/background. The macros required for the particular template are already provided in the sample default notification template.

  4. Click on the save button to save the notification template.

To access the branding menu, first click on the Configuration left-hand side menu and then proceed by clicking on the Branding pop-up menu item.

Start the configuration by entering your Organization Name and Tag Line

Proceed by adding your URL to the Website text box and click on “Fetch Brand”.

Click on Save and Sync Server to make the branding configuration apply to the entire website.

CIDR - Refers to the CIDR notation of the subnet of the network that this zone refers to. .

To start configuring custom attributes, click on the configurations left-hand side menu and then click on the custom attributes link on the popup menu.

Click on the Add New button to start adding custom attributes

Access the notification templates menu by clicking on the configuration menu on the left-hand side menu bar and then clicking on the Notification templates pop-up menu.

Click on the eye icon to preview the corresponding template

Click on the pencil icon to edit the template.

CIDR Notation

Configuring Webhooks

Webhooks are a way for external systems to receive events from the Cymmetri Identity Platform.

Requires the tenant organization to run a web server that is exposed to the Internet or at least accessible from the Cymmetri Cloud 2.0 deployment on the cloud

Events may be received for the following events -

  1. Testing Webhook - Generates a POST request to the /test endpoint of the web server hosted by the tenant. It provides an authorization token that can be used for making any API calls to the Cymmetri Cloud 2.0 APIs. Is generated after this configuration. Go to the Configuration Menu and Select the webhooks menu -

    Click on the save & test button.

  2. Pre Create User - Generates a POST request, before the user is created, to the /preCreateUser endpoint of the web server hosted by the tenant.

  3. Pre Update User - Generates a POST request, before the user is updated, to the /preUpdateUser endpoint of the web server hosted by the tenant.

  4. Post Update User - Generates a POST request, after the user is updated, to the /postUpdateUser endpoint of the web server hosted by the tenant.

  5. Validate User - Generates a POST request, before the user is created and validation is to be run, to the /validateUser endpoint of the web server hosted by the tenant.

  6. Validate Update User - Generates a POST request, before the user is created and validation is to be run, to the /validateUpdateUser endpoint of the web server hosted by the tenant.

  7. Change password - Generates a POST request, upon the change of password for a user, to the /changePassword endpoint of the web server hosted by the tenant.

  8. Pre Provision - Generates a POST request, before the provisioning of the user to an application, to the /preProvision endpoint of the web server hosted by the tenant.

  9. Post Provision - Generates a POST request, after the provisioning of the user to an application, to the /postProvision endpoint of the web server hosted by the tenant.

  10. Policy Map - Generates a POST request, while assigning the application to a user, to the /policyMap endpoint of the web server hosted by the tenant.

  11. Deprovision Run - Generates a POST request, upon the update of a user to deprovision a user, to the /runDeprovision endpoint of the web server hosted by the tenant.

While other webhooks operate on a principle of fire-and-forget, the validateUser and the validateUpdateUser expect the response from the tenant as the same or modified body as sent to it for validation.

API body for the endpoints

Test web hook

Purpose : This api is used to test web hook api.

Input Needed: NA

Curl Request:

--header 'Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJhZG1pbiIsImRlbGVnYXRlZSI6bnVsbCwiZGVsZWdhdGVlSWQiOm51bGwsImZpcnN0TG9naW4iOmZhbHNlLCJyb2xlcyI6WyJPUkdfQURNSU4iLCJVU0VSIl0sInRlbmFudElkIjoiYXMxMDAiLCJleHAiOjE2NDYzOTYzMDgsInVzZXJJZCI6IjYyMTRkYjdiZDY2MWE1NzM4NmE3MWYxMCIsImlhdCI6MTY0NjM5MDMwOH0.bdKZ3UBCedT91bJAWLCo2AOahIs5ClFMAhnj36f_ecQ' \

--header 'Content-Type: application/json' \

--data-raw '{

}'

Response:

{ "response": {} }

Pre Create User

Purpose : This web hook api is used to do some events before creating a user in the target system.

Input needed :

{

"request": {

"user": {

"assignedGroups": [],

"provisionedApps": {},

"securityQuestion": {},

"country": "India",

"firstName": "Shreyash2",

"lastName": "Pande2",

"login": "shreyash2",

"userType": "Employee"

}

}

}

Curl request:

--header 'Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJhZG1pbiIsImRlbGVnYXRlZSI6bnVsbCwiZGVsZWdhdGVlSWQiOm51bGwsImZpcnN0TG9naW4iOmZhbHNlLCJyb2xlcyI6WyJPUkdfQURNSU4iLCJVU0VSIl0sInRlbmFudElkIjoiYXMxMDAiLCJleHAiOjE2NDYzOTYzMDgsInVzZXJJZCI6IjYyMTRkYjdiZDY2MWE1NzM4NmE3MWYxMCIsImlhdCI6MTY0NjM5MDMwOH0.bdKZ3UBCedT91bJAWLCo2AOahIs5ClFMAhnj36f_ecQ' \

--header 'Content-Type: application/json' \

--data-raw '{

"request": {

"user": {

"assignedGroups": [],

"provisionedApps": {},

"securityQuestion": {},

"country": "India",

"firstName": "Shreyash2",

"lastName": "Pande2",

"login": "shreyash2",

"userType": "Employee"

}

}

}'

Response: {

"response": {

"data": {

"assignedGroups": [],

"provisionedApps": {},

"securityQuestion": {},

"country": "India",

"firstName": "Shreyash2",

"lastName": "Pande2",

"login": "shreyash2",

"userType": "Employee"

}

}

}

Post create User

Purpose : This web hook is used to do some events after creating a user in the target system.

--header 'Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJhZG1pbiIsImRlbGVnYXRlZSI6bnVsbCwiZGVsZWdhdGVlSWQiOm51bGwsImZpcnN0TG9naW4iOmZhbHNlLCJyb2xlcyI6WyJPUkdfQURNSU4iLCJVU0VSIl0sInRlbmFudElkIjoiYXMxMDAiLCJleHAiOjE2NDYzOTYzMDgsInVzZXJJZCI6IjYyMTRkYjdiZDY2MWE1NzM4NmE3MWYxMCIsImlhdCI6MTY0NjM5MDMwOH0.bdKZ3UBCedT91bJAWLCo2AOahIs5ClFMAhnj36f_ecQ' \

--header 'Content-Type: application/json' \

--data-raw '{

"request": {

"user": {

"assignedGroups": [],

"provisionedApps": {},

"securityQuestion": {},

"country": "India",

"firstName": "Shreyash2",

"lastName": "Pande2",

"login": "shreyash2",

"userType": "Employee"

}

}

}'

Response : NA

Restful API - Pre update user

Purpose : This web hook is used to do some events before updating a user in the target system.

Input needed:

{

"request": {

"user": {

"assignedGroups": [],

"provisionedApps": {},

"securityQuestion": {},

"country": "India",

"firstName": "Shreyash2",

"lastName": "Pande2",

"login": "shreyash2",

"userType": "Employee"

}

}

}

Curl request:

--header 'Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJhZG1pbiIsImRlbGVnYXRlZSI6bnVsbCwiZGVsZWdhdGVlSWQiOm51bGwsImZpcnN0TG9naW4iOmZhbHNlLCJyb2xlcyI6WyJPUkdfQURNSU4iLCJVU0VSIl0sInRlbmFudElkIjoiYXMxMDAiLCJleHAiOjE2NDYzOTYzMDgsInVzZXJJZCI6IjYyMTRkYjdiZDY2MWE1NzM4NmE3MWYxMCIsImlhdCI6MTY0NjM5MDMwOH0.bdKZ3UBCedT91bJAWLCo2AOahIs5ClFMAhnj36f_ecQ' \

--header 'Content-Type: application/json' \

--data-raw '{

"request": {

"user": {

"assignedGroups": [],

"provisionedApps": {},

"securityQuestion": {},

"country": "India",

"firstName": "Shreyash2",

"lastName": "Pande2",

"login": "shreyash2",

"userType": "Employee"

}

}

}'

Response

{

"response": {

"data": {

"assignedGroups": [],

"provisionedApps": {},

"securityQuestion": {},

"country": "India",

"firstName": "Shreyash2",

"lastName": "Pande2",

"login": "shreyash2",

"userType": "Employee"

}

}

}

Post update user

Purpose : This web hook is used to do some events after updating a user in the target system.

Input needed :

{

"request": {

"user": {

"assignedGroups": [],

"provisionedApps": {},

"securityQuestion": {},

"country": "India",

"firstName": "Shreyash2",

"lastName": "Pande2",

"login": "shreyash2",

"userType": "Employee"

}

}

}

Curl request:

--header 'Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJhZG1pbiIsImRlbGVnYXRlZSI6bnVsbCwiZGVsZWdhdGVlSWQiOm51bGwsImZpcnN0TG9naW4iOmZhbHNlLCJyb2xlcyI6WyJPUkdfQURNSU4iLCJVU0VSIl0sInRlbmFudElkIjoiYXMxMDAiLCJleHAiOjE2NDYzOTYzMDgsInVzZXJJZCI6IjYyMTRkYjdiZDY2MWE1NzM4NmE3MWYxMCIsImlhdCI6MTY0NjM5MDMwOH0.bdKZ3UBCedT91bJAWLCo2AOahIs5ClFMAhnj36f_ecQ' \

--header 'Content-Type: application/json' \

--data-raw '{

"request": {

"user": {

"assignedGroups": [],

"provisionedApps": {},

"securityQuestion": {},

"country": "India",

"firstName": "Shreyash2",

"lastName": "Pande2",

"login": "shreyash2",

"userType": "Employee"

}

}

}'

Response: NA

Validate User

Purpose : This web hook is used to validate users before creating a user in the target system.

Input Needed :

{

"request": {

"user": {

"assignedGroups": [],

"provisionedApps": {},

"securityQuestion": {},

"country": "India",

"firstName": "Shreyash2",

"lastName": "Pande2",

"login": "shreyash2",

"userType": "Employee"

}

}

}

--header 'Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJhZG1pbiIsImRlbGVnYXRlZSI6bnVsbCwiZGVsZWdhdGVlSWQiOm51bGwsImZpcnN0TG9naW4iOmZhbHNlLCJyb2xlcyI6WyJPUkdfQURNSU4iLCJVU0VSIl0sInRlbmFudElkIjoiYXMxMDAiLCJleHAiOjE2NDYzOTYzMDgsInVzZXJJZCI6IjYyMTRkYjdiZDY2MWE1NzM4NmE3MWYxMCIsImlhdCI6MTY0NjM5MDMwOH0.bdKZ3UBCedT91bJAWLCo2AOahIs5ClFMAhnj36f_ecQ' \

--header 'Content-Type: application/json' \

--data-raw '{

"request": {

"user": {

"assignedGroups": [],

"provisionedApps": {},

"securityQuestion": {},

"country": "India",

"firstName": "Shreyash2",

"lastName": "Pande2",

"login": "shreyash2",

"userType": "Employee"

}

}

}'

Response: {

"response": {

"error": true,

"message": "MobileAlreadyExist"

}

}

Validate update user

Purpose : This web hook is used to validate users before updating a user in the target system.

Input needed:

"request": {

"user": {

"assignedGroups": [],

"provisionedApps": {},

"securityQuestion": {},

"country": "India",

"firstName": "Shreyash2",

"lastName": "Pande2",

"login": "shreyash2",

"userType": "Employee"

}

}

}

Curl request:

--header 'Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJhZG1pbiIsImRlbGVnYXRlZSI6bnVsbCwiZGVsZWdhdGVlSWQiOm51bGwsImZpcnN0TG9naW4iOmZhbHNlLCJyb2xlcyI6WyJPUkdfQURNSU4iLCJVU0VSIl0sInRlbmFudElkIjoiYXMxMDAiLCJleHAiOjE2NDYzOTYzMDgsInVzZXJJZCI6IjYyMTRkYjdiZDY2MWE1NzM4NmE3MWYxMCIsImlhdCI6MTY0NjM5MDMwOH0.bdKZ3UBCedT91bJAWLCo2AOahIs5ClFMAhnj36f_ecQ' \

--header 'Content-Type: application/json' \

--data-raw '{

"request": {

"user": {

"assignedGroups": [],

"provisionedApps": {},

"securityQuestion": {},

"country": "India",

"firstName": "Shreyash2",

"lastName": "Pande2",

"login": "shreyash2",

"userType": "Employee"

}

}

}'

Response:

{

"response": {

"error": true,

"message": "EmailAlreadyExist"

}

}

Change password

Purpose : This web hook is used to do some events on password change.

Input Needed :

{

"request": {

"user": {

"assignedGroups": [],

"provisionedApps": {},

"securityQuestion": {},

"country": "India",

"firstName": "Shreyash2",

"lastName": "Pande2",

"login": "shreyash2",

"userType": "Employee"

},

"passwordText" : "Welcome@123"

}

}

--header 'Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJhZG1pbiIsImRlbGVnYXRlZSI6bnVsbCwiZGVsZWdhdGVlSWQiOm51bGwsImZpcnN0TG9naW4iOmZhbHNlLCJyb2xlcyI6WyJPUkdfQURNSU4iLCJVU0VSIl0sInRlbmFudElkIjoiYXMxMDAiLCJleHAiOjE2NDYzOTYzMDgsInVzZXJJZCI6IjYyMTRkYjdiZDY2MWE1NzM4NmE3MWYxMCIsImlhdCI6MTY0NjM5MDMwOH0.bdKZ3UBCedT91bJAWLCo2AOahIs5ClFMAhnj36f_ecQ' \

--header 'Content-Type: application/json' \

--data-raw '{

"request": {

"user": {

"assignedGroups": [],

"provisionedApps": {},

"securityQuestion": {},

"country": "India",

"firstName": "Shreyash2",

"lastName": "Pande2",

"login": "shreyash2",

"userType": "Employee"

},

"passwordText" : "Welcome@123"

}

}'

Response: NA

Pre provision

Purpose : This web hook is used to do some events before assigning applications to a user.

Input Needed :

{

"request": {

"policyMap" : "email",

"form" : "",

"applicationId" : "620231fee789224ec1cec3dd",

"roleList" : [],

"action" : "Application Create",

"user": {

"assignedGroups": [],

"provisionedApps": {},

"securityQuestion": {},

"country": "India",

"firstName": "Shreyash2",

"lastName": "Pande2",

"login": "shreyash2",

"userType": "Employee"

}

}

}

Curl Request:

--header 'Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJhZG1pbiIsImRlbGVnYXRlZSI6bnVsbCwiZGVsZWdhdGVlSWQiOm51bGwsImZpcnN0TG9naW4iOmZhbHNlLCJyb2xlcyI6WyJPUkdfQURNSU4iLCJVU0VSIl0sInRlbmFudElkIjoiYXMxMDAiLCJleHAiOjE2NDYzOTYzMDgsInVzZXJJZCI6IjYyMTRkYjdiZDY2MWE1NzM4NmE3MWYxMCIsImlhdCI6MTY0NjM5MDMwOH0.bdKZ3UBCedT91bJAWLCo2AOahIs5ClFMAhnj36f_ecQ' \

--header 'Content-Type: application/json' \

--data-raw '{

"request": {

"policyMap" : "email",

"form" : "",

"applicationId" : "620231fee789224ec1cec3dd",

"roleList" : [],

"action" : "Application Create",

"user": {

"assignedGroups": [],

"provisionedApps": {},

"securityQuestion": {},

"country": "India",

"firstName": "Shreyash2",

"lastName": "Pande2",

"login": "shreyash2",

"userType": "Employee"

}

}

}'

Response : NA

Post provision

Purpose : This web hook is used to do some events after assigning applications to a user.

Input Needed :

{

"request": {

"policyMap" : "email",

"form" : "",

"applicationId" : "620231fee789224ec1cec3dd",

"roleList" : [],

"action" : "Application Create",

"user": {

"assignedGroups": [],

"provisionedApps": {},

"securityQuestion": {},

"country": "India",

"firstName": "Shreyash2",

"lastName": "Pande2",

"login": "shreyash2",

"userType": "Employee"

},

"isSuccess" : true,

"uid" : "5f36283bc193991db0990d3e"

}

}

Curl response :

--header 'Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJhZG1pbiIsImRlbGVnYXRlZSI6bnVsbCwiZGVsZWdhdGVlSWQiOm51bGwsImZpcnN0TG9naW4iOmZhbHNlLCJyb2xlcyI6WyJPUkdfQURNSU4iLCJVU0VSIl0sInRlbmFudElkIjoiYXMxMDAiLCJleHAiOjE2NDYzOTYzMDgsInVzZXJJZCI6IjYyMTRkYjdiZDY2MWE1NzM4NmE3MWYxMCIsImlhdCI6MTY0NjM5MDMwOH0.bdKZ3UBCedT91bJAWLCo2AOahIs5ClFMAhnj36f_ecQ' \

--header 'Content-Type: application/json' \

--data-raw '{

"request": {

"policyMap" : "email",

"form" : "",

"applicationId" : "620231fee789224ec1cec3dd",

"roleList" : [],

"action" : "Application Create",

"user": {

"assignedGroups": [],

"provisionedApps": {},

"securityQuestion": {},

"country": "India",

"firstName": "Shreyash2",

"lastName": "Pande2",

"login": "shreyash2",

"userType": "Employee"

},

"isSuccess" : true,

"uid" : "5f36283bc193991db0990d3e"

}

}'

Response : NA

Policy map

Purpose : This web hook is used to do some events on policy map while assigning the application to a user.

Input needed :

"request": {

"targetAttribute" : "email",

"cymmetrifield" : "email",

"formVeriable" : "",

"user": {

"assignedGroups": [],

"provisionedApps": {},

"securityQuestion": {},

"country": "India",

"firstName": "Shreyash2",

"lastName": "Pande2",

"login": "shreyash2",

"userType": "Employee"

}

}

}

Curl request :

--header 'Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJhZG1pbiIsImRlbGVnYXRlZSI6bnVsbCwiZGVsZWdhdGVlSWQiOm51bGwsImZpcnN0TG9naW4iOmZhbHNlLCJyb2xlcyI6WyJPUkdfQURNSU4iLCJVU0VSIl0sInRlbmFudElkIjoiYXMxMDAiLCJleHAiOjE2NDYzOTYzMDgsInVzZXJJZCI6IjYyMTRkYjdiZDY2MWE1NzM4NmE3MWYxMCIsImlhdCI6MTY0NjM5MDMwOH0.bdKZ3UBCedT91bJAWLCo2AOahIs5ClFMAhnj36f_ecQ' \

--header 'Content-Type: application/json' \

--data-raw '{

"request": {

"targetAttribute" : "email",

"cymmetrifield" : "email",

"formVeriable" : "",

"user": {

"assignedGroups": [],

"provisionedApps": {},

"securityQuestion": {},

"country": "India",

"firstName": "Shreyash2",

"lastName": "Pande2",

"login": "shreyash2",

"userType": "Employee"

}

}

}'

Response :

{

"response": {

"mappedValue": "valid"

}

}

Run deprovisioning

Purpose : This web hook is used for deprovisioning applications when users get updated .

Input needed :

{

"request": {

"user": {

"assignedGroups": [],

"provisionedApps": {},

"securityQuestion": {},

"country": "India",

"firstName": "Shreyash2",

"lastName": "Pande2",

"login": "shreyash2",

"userType": "Employee"

}

}

}

Curl request:

--header 'Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJhZG1pbiIsImRlbGVnYXRlZSI6bnVsbCwiZGVsZWdhdGVlSWQiOm51bGwsImZpcnN0TG9naW4iOmZhbHNlLCJyb2xlcyI6WyJPUkdfQURNSU4iLCJVU0VSIl0sInRlbmFudElkIjoiYXMxMDAiLCJleHAiOjE2NDYzOTYzMDgsInVzZXJJZCI6IjYyMTRkYjdiZDY2MWE1NzM4NmE3MWYxMCIsImlhdCI6MTY0NjM5MDMwOH0.bdKZ3UBCedT91bJAWLCo2AOahIs5ClFMAhnj36f_ecQ' \

--header 'Content-Type: application/json' \

--data-raw '{

"request": {

"user": {

"assignedGroups": [],

"provisionedApps": {},

"securityQuestion": {},

"country": "India",

"firstName": "Shreyash2",

"lastName": "Pande2",

"login": "shreyash2",

"userType": "Employee"

}

}

}'

Response:

{

"response": {

"data": true

}

}

curl --location --request POST '' \

curl --location --request POST '' \

Curl request: curl --location --request POST '' \

curl --location --request POST '' \

curl --location --request POST '' \

Curl request: curl --location --request POST '' \

curl --location --request POST '' \

Curl request: curl --location --request POST '' \

curl --location --request POST '' \

curl --location --request POST '' \

"defaultValue" : "",

curl --location --request POST '' \

"defaultValue" : "",

curl --location --request POST '' \

http://192.168.29.227:8080/webhook/test
https://52.66.206.31:8080/webhook/preCreateUser
http://192.168.1.193:8080/webhook/postCreateUser
http://192.168.1.193:8080/webhook/preUpdateUser
http://192.168.1.193:8080/webhook/postUpdateUser
http://192.168.1.193:8080/webhook/validateUser
http://192.168.1.193:8080/webhook/validateUpdateUser
http://192.168.1.193:8080/webhook/changePassword
http://192.168.1.193:8080/webhook/preProvision
http://192.168.1.193:8080/webhook/postProvision
example@gmail.com
https://52.66.206.31:8080/webhook/policymap
example@gmail.com
https://52.66.206.31:8080/webhook/runDeprovision

Password Filter

TABLE OF CONTENTS

Introduction

The Cymmetri Architecture without the password filter utility allows for one-way synchronization of passwords from Cymmetri to other managed applications including Active Directory. Active Directory passwords may therefore be updated, once the user password is updated in Cymmetri. However, to keep both the Cymmetri database and Active Directory user passwords in synchronization, there is a need for Cymmetri database to receive password change notification from the Active Directory, when the password is directly updated in Active Directory.

Active Directory provides for the use of Password Filter which can intercept the request for password change and can make an API call to Cymmetri deployment to update the password in Cymmetri database as well.

Flow Diagram

Flow Description

  1. Cymmetri Password Filter dll will be deployed in the Active directory environment and system variables (environment variables) are configured to allow the password filter to connect to the Cymmetri deployment.

  2. Active Directory server needs to be restarted once the configuration is performed.

  3. Once the user changes the password on a domain-connected computer using Ctrl+Alt+Delete utility OR if the Active Directory administrator resets the user's password using Active Directory tools, the password filter will be triggered.

  4. The password filter DLL will receive the username and the plaintext password from the Active Directory, once the password change has been applied on the Active Directory.

  5. The password filter DLL will encrypt the password using RSA encryption with a public key and will send the encrypted password and the username to the Cymmetri deployment using a REST API call over HTTPS.

  6. The Cymmetri deployment receives the username and encrypted password, it decrypts the password using private key.

  7. Once the password is decrypted, the Cymmetri deployment updates the password in Cymmetri database for the given user.

  8. If the user is assigned multiple applications for provisioning, the action of updating user's password in Cymmetri database will trigger password update for the user in other provisioned applications. However, Active directory application will not receive this password update, to avoid loops.

Configuration

Key
Value

CYMMETRI_APP_ID

<application-id-of-active-directory-in-Cymmetri>

CYMMETRI_CLIENT_TOKEN

Authorization: Bearer <token-from-api-client>

CYMMETRI_ENDPOINT_URL

https://<cymmetri-domain>/apiext/api/password/filter/updateUserPassword

CYMMETRI_PUBLIC_KEY_FILE

<path of public key file in Active Directory Server>

Introduction
Flow Description
Configuration

Introduction to Privilege Access Management (PAM)

Privileged Access Management (PAM) is a set of technologies, policies, and procedures used to manage and monitor access to critical systems and sensitive data within an organization. PAM solutions aim to mitigate the risk of unauthorized access to privileged accounts, which are often used by administrators, IT staff, and other privileged users to manage critical systems and applications.

The goal of PAM is to ensure that privileged access is only granted to authorized users, and that access is granted on a need-to-know basis.

PAM solutions typically involve several components, including privileged account discovery, credential management, access control, session management, and monitoring and reporting.

  • Credential Management involves securely storing and rotating passwords and other credentials used to access privileged accounts.

  • Access control involves implementing policies and procedures to control who has access to privileged accounts and when.

  • Session management involves monitoring and terminating privileged sessions to prevent unauthorized access and misuse.

  • Monitoring and reporting involves tracking all privileged access activity and generating alerts when suspicious activity is detected.

Implementing a robust PAM solution can help organizations improve their security posture, reduce the risk of data breaches, and comply with regulatory requirements.

However, PAM solutions require careful planning and implementation to ensure they do not disrupt business operations or create additional security risks.

How to Access PAM in Cymmetri

  1. Navigate to your Cymmetri Tenant for e.g. sunstarcafe.newqa.cymmetri.in/login

  2. Login into your tenant by entering your username and password of the Organization Administrator and Click "Login"

  3. Enter Cymmetri Authenticator Code and Click "Verify"

  4. Go To "Configurations"

And Click on "Admins"

  1. Select PAM Write Access option and Click "Add New" to add a new PAM Write Access Administrator

  1. Find the user who needs to be the Administrator and Click "Assign"

  2. Ensure correct Role is selected and Click "Save"

  3. Ensure the selected user is appearing in the list of Admins

  4. Follow the same steps to assign a PAM Read Access Administrator

  5. And PAM Report Access Administrator

  6. Logout from the current login

  1. And login again using the login credentials of the PAM Admin that was just added

  1. Since the user is now an administrator we will need to provide the authenticator code and click on "Verify" to login

  2. To Access PAM we need to Click on "Products"

  3. And then select Privilege Access Management

  4. This opens the screen for Privilege Access Management as shown below

Adding a device/ server in PAM

A device or server represents the critical systems within an organization.Servers play a critical role in Privileged Access Management (PAM) solutions, as they are often the targets of unauthorized access by attackers seeking to gain control over critical systems and sensitive data.

PAM solutions manage and control privileged access to these systems. By leveraging PAM solutions to manage privileged access to servers, organizations can improve their security posture, reduce the risk of data breaches, and comply with regulatory requirements.

In Cymmetri it is the Actual Server(Windows or Linux) that the Privileged User will be connecting to using either RDP or SSH.

Cymmetri allows you to add this device/ server.

The steps to add a RDP device or server are as below:

  1. Click on the Devices sub-section on the PAM Page and click on the Add Server Button

  2. This opens up a new window for adding a server and it gives two options: RDP(Remote Desktop Protocol) and SSH(Secure Shell Protocol)., we need to select RDP for a Windows Server and SSH for a Linux Server. Currently we will select RDP as we want to add a Windows Server

  3. When you select RDP a pop up shows up on the right and it asks for 3 details i.e.

    1. Device Label

    2. Hostname and

    3. Username

  4. Device Label represents name of the device/ server and hence has to be unique.

  5. HostName is the actual server name or its ip.

  6. Username represents the actual server username to be used to connect to the server.

  7. We will change these details as given below:

    1. Device Name: Windows RDP Server

    2. Hostname: 65.0.122.207

    3. Username: Administrator

  8. And then click on Add Device button to add the server

  9. To check if the device is correctly added Click on Devices again and you can see the newly added server should be visible as shown below

The steps to add a SSH device or server are as below:

  1. Click on the Devices sub-section on the PAM Page and click on the Add Server Button

  2. Now from the two options available we need to select SSH

  3. A similar popup like in RDP opens up with Device Label prefilled.

  4. We need to change the Device Label, Hostname and Username as given below:

    1. Device Name: Linux SSH

    2. Hostname: 10.0.1.7

    3. Username: kiran

  5. We then click on Add Device to add the Server and it can be seen in list as shown below:

When a device is added it is added with minimum configuration, i.e. Device Label, Hostname and Username. You can further configure the connection and other device related information if it needs to be customized

For configuring the device further the steps are as follows:

  1. Click on the device you want to configure

  2. Click on Settings

  3. A Settings Page opens when you can find numerous options to configure as show below:

  4. Connection Attributes for any device are read-only as show here, but other attributes can be configured

  5. Shown below are the attributes of a device/ server that can be configured:

Break Glass Configuration

What is break glass configuration?

"Break glass configuration" in Cymmetri refers to a method of obtaining the list of username and passwords of vault users without resetting them. It involves setting up special user accounts that can be used in emergencies to generate an envelope of vault user credentials and send it as a email to the configured user.

For configuring the user(s) we need to select the user(s) from the dropdown as shown below and need to enter a password.

Sending the vault user credentials can be done in two ways:

  1. Configure a scheduler which sends the email at the configured date-time and mentioned frequency as shown below:

  2. Generate and send the envelope manually for All or specific user(s) as shown below:

The email sent to the configured user consists of a .csv file containing user details in encrypted format as shown here:

The User then needs to use a Utility called PassEnvelopeReader to decrpyt the encrypted data and view the list of usernames and password. This utility asks for a password at the beginning to be able to access and decrypt the user details.

Dormancy Disable Config

Dormancy Disable Config refers to configuring a setting that allows to automatically deprovision access of a user to the server in case the user has been dormant for more than the mentioned number days in this setting. This might be useful for governance purpose as PAM users are high risk users and this setting can help in removing such dormant accesses.

Following steps need to be performed to configure Dormancy Disable

  1. Go To Privilege Access Management -> Dormancy Disable Config

  2. The in the Config Days section need to provide the number of days after which the acoounty activiity can be considered dormant and hence deprovision the access

  3. The status need to be enabled and then you can save the setting for the mentioned number of days.

Steps to Configure Azure AD as External IDP for Cymmetri

Setting up Cymmetri Service Provider for External Identity Provider Configuration

Login into the Cymmetri Administration Console for the below configuration

Note: The user interface may differ but the configuration options will remain the same.

  1. Click on “Add New”.

  2. Navigate to External IDP in Identity Provider.

Configure Azure AD for Creating Identity provider configuration

  1. Click on Edit basic SAML configuration.

  2. Add Identifier (Entity ID) and Assertion Consumer Service URL from the xml file downloaded in step 3 (For Azure, Sign on and ACS URL is the same) and save the configuration.

Continue configuration of Identity Provider In Cymmetri Administration Console

  1. Copy Azure AD Identifier from Set up, navigate to azure-idp in Cymmetri and paste it in Entity ID. Similarly, copy login URL and paste it in Single Sign On Service URL in Cymmetri.

  2. Open the Base64 certificate downloaded in step 12, copy it and then paste it in x509Certifcate field in Cymmetri.

  3. Add Name and description and Select Identity Provider as Azure (External IDP) and mark the status as Active.

Assigning user to application in Azure Administration Console for allowing users to use Azure as External Identity provider

  1. Navigate to Enterprise applications and select the application you created in step 8.

Configuring JIT provisioning in Cymmetri Administration Console

  1. If JIT provisioning needs to be enabled for Azure AD as external Identity provider, we may set it up using the steps below.

  2. Navigate to JIT in external identity provider and enable JIT Configuration.

  3. The following fields are mandatory in Cymmetri - firstName, lastName, login, userType, displayName, and email.

  4. For Azure JIT configuration, the following mapping needs to be done -

    1. First Name -

      1. Cymmetri Field - firstName

    2. Last Name -

      1. Cymmetri Field - lastName

    3. Login (Username) -

      1. Cymmetri Field - login

    4. User Type -

      1. Application Field - any string

      2. Cymmetri Field - userType

      3. Default Value - <will be one of Employee, Vendor, Consultant>

    5. Display Name -

      1. Cymmetri Field - displayName

    6. Email Address -

      1. Cymmetri Field - email

In Azure Administration Console

Navigate to Service Provider.

Enter Cymmetri as Service Provider Name and the description, select Email as Name ID Policy dropdown and save the details. Your Service provider is created at this step, download the metadata(xml file) of the same.

Select Azure-IDP.

Now Login to Azure portal and select Azure Active Directory.

Navigate to Enterprise applications and select New application.

Create your own application and enter the name of the application.

Set up Single Sign On after creating the application using SAML.

Download the Certificate (Base64) from SAML Certificates.

Replace the text "<host-name>" as the URL of the Cymmetri deployment (e.g., ) "aktestidp.ux.cymmetri.in" in the destination field - "https://<hostName>/spsamlsrvc/samlSP/SingleSignOnService" as "spsamlsrvc/samlSP/SingleSignOnService".

Select the created service provider in the Service provider Id field dropdown and save the changes.

Navigate to Auth Rules in Cymmetri and select Add New

Click on Add Condition.

If you wish to set this Azure External Identity provider for users having email address ending with "@unotechsoft.com" then you may select condition as LoginPattern > Regular Expression and its value as (.)*(@unotechsoft.com)+$; and save the details.

Go to Users and groups and select Add user/group and add the user.

Application Field -

Application Field -

Application Field -

Application Field -

Application Field -

Login to cymmetri using Azure Email Address

The user will be redirected to the Azure portal to enter the Azure credentials.

Once the credentials have been entered properly in Azure portal, the user will be redirected back to Cymmetri and will be logged in successfully.

https://aktestidp.ux.cymmetri.in
https://aktestidp.ux.cymmetri.in/
http://schemas.xmlsoap.org/ws/2005/05/identity/claims/givenname
http://schemas.xmlsoap.org/ws/2005/05/identity/claims/surname
http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name
http://schemas.microsoft.com/identity/claims/displayname
http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name

PAM Reports and PAM History

PAM Reports

Cymmetri provide you with various PAM Reports that the administrator can use to have various insights.

For accessing PAM Reports you need to access Privilege Access Management ->Report as shown below:

PAM Reports sections provides you with the following types of reports:

Report Type

Usage

PAM Access Report

Provides details of server access by PAM Users

PAM Connection Logs

Provides details of the various PAM Connections that occur

PAM User Logs

Provides PAM user logs

PAM User-Connection Assignment

Provides details of the user connection assignment

PAM user wise server access report

Shows user wise access of PAM Server

PAM History

PAM server can monitor and record privileged sessions, providing audit trails of all privileged access activities. This allows security teams to quickly identify and investigate any suspicious or unauthorized activity.

PAM History shows a complete history of usage by PAM users of the various devices/ servers configured in PAM. PAM History maintains recording of all privileged access activity which can be seen by the administrator as and when needed.

To Access PAM History you need to access Privilege Access Management->History. To view the session recording you need to click on the video icon in right most column Logs

The image below shows a sample recording that the administrator can view

Vaulting Configuration

Vaulting Configuration section allows you to configure various details about vaults that are necessary for proper and efficient usage of vault users

It allows you to configure the following:

  1. Password Policy

  2. Active Directory (A central location for vault users)

  3. Manual Generation of Passwords for Vault Users (All or Specific Users)

Password Policy

  1. Cymmetri allows you to select a specific Password Policy for Vault Users, If nothing is changed it uses the default password policy of Cymmetri.

  2. For Changing the Password Policy for Vault Users, Select Vaulting Configuration and then select the Password Policy that you wish to implement from the dropdown provided as shown below:

Active Directory

  1. If the vault users are stored at a central location like Active Directory then we need to configure the location and access credentials of this Active Directory.

  2. For configuring the Active Directory we need to provide the following information as shown below:

    1. Active Directory Domain: Here we need to provide the Active Directory LDAP URL and the root domain details. For e.g. ldaps://EC2AMAZ-2LBJU5A.cymmetri.in:636;DC=cymmetri,DC=in

    2. User Name: This is the Active Directory Administrative username. For e.g. Cymmadmin

    3. Password: This is the Active Directory Administrative password.

Generation of Passwords for Vault Users (All or Specific Users)

For Generating Password for Vault User we need to do the following configurations:

  1. One or more users who will receive an email that contains the list of usernames and passwords

  2. Password for opening the file which contains the list of usernames and passwords

  3. Configure a scheduler to reset the password of users and send an email to the above configured use

  4. Manually send the list of usernames and passwords of all or specific users

One or more users who will receive an email that contains the list of usernames and passwords:

For adding users who will receive the email containing the list of usernames and passwords we need to select one more cymmetri users here as shown below:

Password for opening the file which contains the list of usernames and passwords

For Configuring the password simply enter the password in the password box provided

Configure a scheduler to reset the password of users and send an email to the above configured use

For configuring a schedular we need to enable the scheduler and provide the following details:

  • A start execution date and

  • cron expression

The cron expression can also be generated using the Generate Cron Expression option as shown below:

Manually reset and send the list of usernames and passwords of all or specific users

  • Password of vault users can be reset manually and sent an email for all or for specific users

  • You can either reset password for all users and send a list by selecting the All users option and clicking on Generate Password button as shown below:

  • Alternatively you may also send a list of only specific usernames and passwords by selecting To specific users option and then selecting the users whose details you need to reset and send.

Access the server

Once the User is assigned access to the respective server the user can see the device in its My Workspace-> My Access -> Devices list as shown below:

The user main select the assigned device and access the corresponding server as shown below

PAM Usage

Assign a server to a user

Once the PAM Server is configured by the PAM Administrator it can be assigned to users. Following are steps to assign a server to a user.

  1. Click on Products

  1. Then click on Privilege Access Management

  2. Then click on devices

  1. Then click on the server that you want to assign to the user

  2. Then select Assignments and click on Assign New button

  3. Choose the user to be assigned and click on Assign

  4. It then prompts you for the duration to provide Time Based Access. Select the desired duration and click on Save

  5. It then shows that the user has been assigned

  6. As soon as the assigned Date and Time occurs the assigned user can be seen in the list of assigned users.

Support for Application Management

Supported Pre-configured Applications

  1. Cloud Based Applications

    1. Azure

    2. Google Workplace

    3. ServiceNow

    4. Github (Using SCIM 2.0 connector)

  2. On-Premises Applications

    1. Active Directory

    2. OpenLDAP

    3. Lotus Notes

Supported Connectors

  1. Using Cloud Connector

    1. Azure

    2. Google Workplace

    3. ServiceNow

    4. SCIM 1.1

    5. SCIM 2.0 (Basic, Bearer, Fixed Bearer)

  2. Using Locally Deployed Connector

    1. Active Directory

    2. Custom Script for Databases

    3. LDAP

    4. Lotus Notes

    5. Powershell

    6. REST API

First Time User Registration

All users accessing Cymmetri must pass through the first time user registration flow. The user will require the website address to access the Cymmetri cloud account, their Username and password.

Sign In to Cymmetri

URL : https://<companyname>.cymmetri.io/login

  Instructions

Below is a step-by-step guide for accessing Cymmetri and performing the first time registration flow:

  1. Type the appropriate URL in the browser address bar.

  2. Provide the Username in the user name prompt.

  1. Cymmetri will provide option to login with a password

  1. Cymmetri will require the user to change the initial password and provide a new password. If the new password provided by user does not match or does not satisfy the password policy, the user will not be able to reset the password and the Update button will not be clickable.

  1. Once user has successfully registered the MFA, the user will be guided to the My Workspace page.

The password for the user would be sent to the user’s registered email address. The password may also be available with Cymmetri administrative user or the user’s reporting manager.

Example:

After the user has reset the initial password successfully, Cymmetri will ask the user to register for Multi-Factor Authentication. The system will guide the user to setup their MFA.

On clicking the Cymmetri Authenticator option, the user will be required to scan a QR code using the Cymmetri Authenticator mobile application.

https://helpdesk.cymmetri.io/login

Configure Single Sign On

Cymmetri Single Sign On is a module that allows the end-user to simply authenticate once into the Cymmetri Identity platform web portal, and then access all the applications assigned to them without having to log in again into the target application.

The following article explains how to configure any application added to be managed in your Cymmetri Identity platform deployment to support Single SignOn mechanism.

Warning: Single SignOn Module needs to be enabled for your tenant for this configuration to be enabled and for Single SignOn to work.

Supported Single SignOn Mechanisms

Let us first visit the various supported Single SignOn Mechanisms available for the Cymmetri Identity platform.

SAML 2.0 SAML 2.0 (Security Assertion Markup Language) is a mechanism used primarily by web applications to share messages between each other to perform a Single SignOn for the end user.

OpenID Connect OpenID Connect refers to an authentication mechanism that is derived from the OpenID family of Single SignOn mechanisms. It enables the system to perform Single SignOn for a wide range of target application types (such as - Web applications, Mobile Native Applications, Desktop based Applications). It is therefore more versatile than SAML 2.0, and is more commonly used for mobile applications. It is also the mechanism used typically for social logins.

Warning: Please note that for using the above mentioned two mechanisms (SAML 2.0 and OpenID Connect), the managed application must support the corresponding mechanism.

REST API based SSO The above two Single SignOn mechanisms are based on well-accepted and standard mechanisms. However, there might be a few legacy applications in your organization, that for various reasons may not be able to integrate and support the above mentioned protocols, we have introduced Custom API-based SSO as an alternative Single SignOn Mechanism. This requires a few changes in the managed application code which will be referenced in the following section.

Note: Cymmetri Identity platform supports Custom API-based SSO mechanism. However, it is highly recommended to migrate to the aforementioned SAML 2.0 and OpenID Connect mechanisms.

Configuring Applications for Single SignOn

To allow your end-users to access applications managed by your Cymmetri Identity platform deployment, the applications must be configured for Single SignOn, and then assigned the application.

Redirect to Applications without Single SignOn

While it is not recommended for obvious reasons, as an administrator you may configure an application to be used simply for provisioning and redirection, without performing Single SignOn.

Note: The following section is to be used for configure only applications for which you do not need to perform Single SignOn. In case you need to configure any of the following Single SignOn mechanisms, you may skip this section and refer to the corresponding configuration in your chosen method of Single SignOn.

Configuring the Application URL

For configuring an application to simply redirect the enduser to the landing page of the managed application -

Once in the applications menu, click on the application tile for which you need to configure the landing page URL and then on the left side menu, select the SignOn menu item.

Toggle the “Enable Single Sign-On (SSO)” switch to open the corresponding configuration options.

Enter the landing page URL in the “Application URL” text box and click the adjoining “Save” button.

The popup indicating “SSO Updated Successfully” will indicate that the Application URL has been configured successfully for your application.

Conclusion

Assigning the application to an end user will show an application tile as shown below:

Clicking on the application tile, will redirect the user to the assigned landing page URL.

Configure API SSO

Cymmetri platform highly recommends adding support to either SAML 2.0 or OpenID Connect protocols owing to their well-accepted standards and to avoid vendor lock-in.

In the absence of the ability of the managed application to adopt either the SAML 2.0 or the OpenID Connect 1.0 standard, the Cymmetri Identity platform provides with the ability to integrate simple REST API based mechanism to allow an end-user to perform Single SignOn from the Cymmetri Identity Portal

REST API based SSO Explained

Flow explained

  1. User is assigned the application and clicks on the application tile.

  2. The end user session is captured as the client IP address as received from the user’s browser.

  3. The user session is validated and the Cymmetri Identity platform checks if the end user is authorised to perform Single SignOn into the managed application.

  4. In case, such a session token is created and the end-user is redirected as a query parameter to an endpoint on the managed application.

  5. The endpoint on the managed application also captures the end-user’s client IP address, and sends the received token to its backend.

  6. The managed application backend already holds the Application ID and Application password assigned to it when the API-based SSO is configured on the Cymmetri Identity platform.

  7. The managed application backend now makes a POST call to the validate token API endpoint exposed by the Cymmetri Identity platform with the form parameters as follows -

    1. app_id - Previously shared application ID

    2. app_pass - Previously shared application password

    3. user_ip - End-user’s client IP address as captured from the end-user’s browser

    4. auth_token - the token sent to the endpoint of the managed application.

  8. The Cymmetri Identity platform responds back with a success message in case the application ID, application Password, client IP address and the user session string match with the corresponding records in its backend.

  9. In case of success, the managed application is expected to generate a user session for the prescribed user Id as shared in the success response message.

  10. The Cymmetri Identity platform responds back with a failure message in case of even one parameter mismatch from among - application ID, application Password, client IP address or the user session string (shared token).

  11. In case of failure, the managed application is expected to cancel the login attempt and show the error message shared by the Cymmetri Identity platform.

Configuration for REST API based SSO mechanism

Then proceed to the SSO configuration using the “SignOn” link in the left-hand side menu bar.

Enable the Single SignOn by clicking the toggle button on the right-hand side of the page.

Now enter the application URL as below -

Application URL = <base url of the deployment>/apiSSO?applicationId=<applicationId>

Let us first copy the URL from the address bar -

The corresponding URL in my case is -

We evaluate the following values from the URL -

  1. applicationId - 6241c3b604c15417a91c7030

Let us enter this value in the Application URL text bar and click the “Save” button.

Let us proceed by selecting the radio button “API-based SSO”

Click on the dropdown “Advanced Settings (API)” to configure the API-based SSO and enter the information -

Configuration Parameters

  1. Source app token param name - Refers to the key of the query parameter used to share the randomly generated token from the Cymmetri backend.

  2. Application Secret - Refers to the parameter app_pass that must be sent back by the managed application to validate the token.

  3. Target App Redirect URL - Refers to the endpoint exposed by the managed application to receive the token as a query parameter.

  4. Token Validity - number of seconds for which the generated token is valid. The managed application must send back the token for validation within these many seconds.

  5. Target app token param name - This is the field that the managed application must use to send back the token for validation.

  6. External Application ID - Refers to the parameter app_id that must be sent back by the managed application to validate the token.

Assign the application to a user.

On clicking the application tile, the user is redirected to the URL below as per the configuration above.

Once the token is received by the application, the application makes a POST call as indicated by the CURL request below -

Responses from the Validation

Success Response

JSON response

{

“status”:”Success”,

“allow_user”:”true”,

“user_id”:”abhishek.kulkarni”

}

Error Response

JSON Response

{

“status”:”User not verified”,

“allow_user”:”false”,

“user_id”:”abhishek.kulkarni”

}

In case of this error, “User not verified” message must be shown by the managed application. The user must not be allowed to login.

JSON Response

{

“status”:”Application not verified”,

“allow_user”:”false”,

“user_id”:”abhishek.kulkarni”

}

In case of this error, “Application not verified” message must be shown by the managed application. The user must not be allowed to login. The application configuration on the Cymmetri Identity platform and the managed application must be validation and cross-verified.

For configuring the REST API based SSO mechanism, first select the into your Cymmetri Identity platform deployment.

Base URL of the deployment -

Now we generate the Application URL as -

<random token>

curl --location --request POST '' \ --header 'Content-Type: application/x-www-form-urlencoded' \ --data-urlencode 'app_id=demoapps' \ --data-urlencode 'app_pass=Pras@4i1m$' \ --data-urlencode 'auth_token=<random token>' \ --data-urlencode 'user_ip=<client IP address>'

application already added
https://ssotester.cymmetri.io/application/6241c3b604c15417a91c7030/sign-on
https://ssotester.cymmetri.io
https://ssotester.cymmetri.io/apiSSO?applicationId=6241c3b604c15417a91c7030
http://localhost:4124/getToken?auth_token=
https://ssotester.cymmetri.io/api-sso/api/sso/validateToken

Active Directory (AD) Provisioning

Configuration on Cymmetri Identity Platform for Active Directory

For active directory configuration we need AD server with 636 port (ldaps protocol should be enabled).

Test AD configuration before assigning an application to any user.

After testing AD configuration, Active Directory account will created for the user being provisioned into the Active Directory.

  1. The Cymmetri Identity platform Active Directory provisioning supports the following functions -

    1. Create user

    2. Update user

    3. Delete user

Server hostname needs to be configured for public access

Ensure that all your object classes are included here in the Entry object classes.

Configure the root suffix, which is the base DC and configure the Principal password.

Base Contexts for group entry searches is the base DN for searching for groups in the AD. Change the server hostname and use the domain name instead of IP address.

Enter the principal as the manager’s principal name, the principal is the user account that will be used for making LDAP queries to the Active Directory. SSL must always be true.

SCIM 2.0 with Fixed Bearer

  1. Any application which supports SCIM v2.0 with fixed bearer is workable for application.

  2. Following are configuration which is used for SCIM with fixed bearer

  1. Base address - It is the endpoint of the target system which supports SCIM v2 API’s.

  2. Username - Username to authenticate SCIM API endpoint.

  3. Password - Password to authenticate SCIM API endpoint.

  4. Authentication type - It is Fixed Bearer compulsory.

  5. Fixed Bearer Value - The value for fixed bearer.

  6. Update method - Patch or Put method.

  7. Accept - Http header which accepts (application/json etc).

  8. Content Type - Http header which accepts (application/json etc).

Azure Provisioning

Cymmetri Identity Platform application catalogue allows for pre-configured provisioning settings for Azure Portal.

For Azure integration we need an azure enterprise account with its own domain configured in the Azure AD.

  1. Refer following document to configure azure application

  2. Create a new OAuth2 Application and provide the following configuration in Azure OAuth2 application.

  3. Search and select the following permissions/scopes in OpenID

    1. APIConnectors.Read.All

    2. Directory.ReadWrite.All

    3. OpenID

    4. PrivilegedAccess.Read.AzureAD

    5. User.ReadWrite.All

Configuration on Cymmetri Identity Platform for Azure provisioning

  1. Configure the User Configurations

    1. Copy the application authority from the User Configure.

    2. Configure the Client ID.

    3. Configure the Client Secret.

    4. Configure the Redirect URI exposed from the Azure AD.

    5. Graph API base endpoint (User Config Resource URI)

    6. Add the Azure Tenant ID

    7. Choose the base username.

Click on Save, and test the connection.

Azure Document [ConnID]

Application will be created and now we will be able to configure.

Let us now click on Authentication tab on the left-hand side menu. We can choose account either in a single Organization Directory or multiple directory.

Click on Add a platform and we can add a new Redirect URI as “.

Further we can allow the Public Client flows.

Create a new Secret by first, clicking on Certificate and Secrets on the left-hand side menu, and then click on the “+ New Client secret” link, Enter Description and select the Expires option.

Provide the right permissions for the Connector to work by clicking on API Permissions tab on the left-hand side menu, then click on Add, then click on Microsoft Graph and then click on Application Permission and Delegated.

We need to take consent from admin for getting access to Microsoft Graph API, Click on add permission, Click on “Grant Admin content for Unotech Software”, and finally Click on Yes.

Click on Expose an API and Click on Set to expose the API to be used by the Azure API client on the connector.

Configure Azure user and server config as follows

Configure the Domain from Azure Active Directory.

https://connid.atlassian.net/wiki/spaces/BASE/pages/308674561/Azure
http://localhost”

Adding new admins

Cymmetri Identity platform has six different admin roles with various levels of access to the various menus and resources on the administration portal of the Cymmetri deployment.

The various admin roles on the Cymmetri Identity Platform may be described as follows -

Organization Administrator

This is the so-called “super admin” administrator role in the Cymmetri Identity platform deployment. The administrators having this role have the authorization to change any settings or making any changes to the tenant.

Domain Administrator

This is slightly less privileged administrator. Most tenant-wide system settings, such as the configuration of the SMS, Email providers (where such configurations are made by the tenant), are restricted for the domain administrators, all other configurations may be viewed and edited by admins with the Domain administrator role.

Application Administrator

An administrator with a role of Application Administrator has access to the Identity hub configurations, including application, user, and group configurations. The application administrator may map users and groups to applications, and are able to edit all configurations related to Application Management.

Report Administrator

An administrator with a role of Report administrator has the access to the reports menu, including viewing, modifying and adding new reports.

Help Desk Administrator

Helpdesk administrator has access to a very limited set of administrative functionalities, such as, reset password of end-user, remove configured Multifactor authentication options, and other such common use-case

Read Only Administrator

All administrative users have read only access to the administrative section of the Cymmetri Identity platform tenant, but the admins with the role “Read Only Administrator” do not have any edit access to any of the settings or configurations, and only have “Read Only” access to the administrative section.

Adding New Admins

Click on the Configuration menu on the right-hand side menu

Now click on the Admins sub menu within the Configuration menu

Search for the user to assign an administrator role to them and click on the assign button

Select the chosen administration role and click on save

Administrator has been assigned the role as “Report Administrator”.

Click on the +Add new button to add a new administrator

Setting up and managing Access Reviews

Access Campaign

  • An Identity Governance Campaign is a systematic process of attesting a set of employees who have the appropriate privileges on the appropriate resources at a specific point of time.

  • With the help of the campaign, the privileges are revoked when an employee exits from an organization.

Access Review Menu

Access Review menu is navigated as click Product menu (3 dots) → Identity Governance.

Steps for creation of the Campaign

Campaign Details

  1. Organization Admin User logs into Cymmetri.

  2. The user needs to be an Organization administrator to configure an access review campaign

  3. The Organization administrator fills in the following fields to start the campaign

    • Name of the Campaign.

    • Certification completion( period in days) - The overall duration of the access review cycle.

    • Pending notification waiting period - A reminder mail is sent if the access review is not done by the approver within defined calendar days.

    • Campaign Manager - The person responsible for the overall campaign.

    • Revoke access for pending review tasks ( check box ) - It provides us an option to either revoke or continue the access of all users if the access review is not completed in a defined timeline.

    • Next Execution Date- Two options to select from

      • Start Date - Ad-hoc date of execution of campaign

      • Cron Expression - System scheduler to automatically execute the campaign.

  4. Save the details of the page.

Scope

The user fills in the following fields for defining the scope for the certification

  1. Who does this campaign apply to

    • All users

    • To specific organization groups, users, user types, & applications

  2. Exclusion User - To exclude the user to not be a part of the review process

  3. Save the details.

All users

To specific organization groups, users, user types, & applications

Approval Stages

The user can set up the approver in three stages

  • The user selects the number of approval levels from the dropdown field to select total stages:

  • The following fields are displayed after the user selects level approval process:

    • Name

    • Description

    • Level one approval ( Radio button )

      • User - to specify a fixed approval user

      • Reporting Manager - to specify the reporting manager of the user who is under review

  • The User fills them and saves the details.

Stage 1 Approver

Stage 2 Approver

Manage Campaigns

  • The configured campaign will be displayed under the access review tab in the draft state

  • For each campaign admin user can able to

    • View Campaign

    • Edit Campaign

    • Run Campaign

    • Delete the Campaign

  • Now Admin Authority will Publish the Campaign and the status of Campaign will change from

Draft Status → Published Status

  • Here the Admin Authority will run the campaign manually or based on scheduled jobs.

Campaign History

  • Access Review History - It is the Iterations of the campaign performed based on Cron Jobs.

  • The Administrator runs the campaign.

  • If no activity is performed while the campaign is running, All users listed whose status is Pending will be revoked.

Self Service

Also called the Access Review

  • In Self Service User can view the Campaign in 2 sections

    • Active Access Review

      • Here the approving Authority can select any one active campaign for certification purpose.

    • Completed Access Review

Approver Stage

  • While the Campaign is running, the system automatically calculates who is the approving authority, how many user’s access are required to be reviewed in Cymmetri.

  • All active campaigns are visible to the Approving Authority.

    • When clicked on Continue → List of user’s and their access are shown.

  • Approver User can then Approve the individual record or in bulk.

  • In case of revoke access, the system will trigger the selected user for deprovision from the selected application.

Approve / Reject User in All User Campaign

Access changes during and after campaign

  • For the users who are marked “Approved”, such users will continue to have access to the resource. If there are multiple stages of approval then all approvers must mark as “approved”

  • For the users who are marked “Rejected” at any stage of the campaign, their access will be revoked immediately or unassigned from the application.

  • In case no approval or revocation is done, such users access will either be revoked as per the campaign configuration marked “revoke access for pending”. Else user’s access will continue if no action is taken during campaign period.

Pre-requisites and Assumptions

  • Users must be present in Cymmetri and assigned to applications (with or without roles)

  • Approving Authority i.e Manager should be present in the system, if not present then all the user's list pending for approvals will go to the Campaign manager.

  • The Applications selected for the Campaign must be Integrated for Provisioning and Deprovisioning, if not integrated then for the particular user, system will merely unlink the application for user.

Click on Add New to create a Campaign and steps for creation is shown as below :

Vault User

What is a vault user?

A "vault user" refers to a user account that has access to a secure resources on a server. When configuring PAM, credentials of the vault user are used to connect to the destination server.

Each device/ server configured can have a vault user created for it. It is also possible that a same user created at a centrally located place like an Active Directory can be used to access multiple devices/ server.

Cymmetri allows you to Access and Manage Vault Users a vault user and use it to access the server.

Adding a vault user

  1. Click on Vault User in the Privilege Access Management Section

  2. This opens a pop up that asks for your current password. This is done to confirm the request is actually made by the PAM Administrator

  3. Once the password is entered It shows the list of all Vault Users

  4. On the Top Right there is a button for Add Vault User. Click on that to Add a new vault user.

  5. A new modal opens up where you need to provide username and password for creating a vaut user

  6. Here the User Name has to be unique and Password is optional we may create a user just with the User Name

  7. Once entered click on Save and a user is created as shown below

Editing a vault user details:

  1. For editing the details of a vault user we need to click on the ellipses next to the vault user's name and Select Edit as shown below:

  2. This opens a modal similar to adding a vault user where you can change the vault user credentials and save

Deleting a vault user:

  1. For deleting a vault user we need to click on the ellipses next to the vault user's name and Select Delete as shown below:

  2. Once you click on delete it asks for confirmation, Once confirmed the user is deleted.

Sub-Sections of PAM

Privilege Access Management in PAM has various subsections for configuring its various components. These subsections are as follows:

  • Configuration

  • Devices

  • Vault User

  • History

  • Vaulting Configuration

  • Break Glass Configuration

  • SignOn Policy

  • Report &

  • Dormancy Disable Config

All these sections help in configuring PAM, Servers and the Users. It also shows the reports and other additional configurations.

Steps to configure PAM Server

The first section in PAM is Configuration. In this section we can configure the PAM server credentials that will help us to connect to the PAM server.

A PAM server is a component of a Privileged Access Management (PAM) solution that is responsible for managing privileged access to critical systems and applications within an organization. The PAM server acts as a central point of control for managing and monitoring privileged accounts and their access.

PAM servers can be deployed on-premises, in the cloud, or as a hybrid solution. They can also be integrated with other security and IT management solutions, such as identity and access management (IAM) systems like Cymmetri.

To configure the PAM Server we need to provide the IP Address and Port No of the PAM server as shown below:

Create Users

While users may be imported and sychronized from other Identity providers, sometimes users may need to be added manually by the administrator.

Steps to create users

The user has now been created with the assigned groups and assigned applications.

First navigate to the User configuration page, by clicking on the Identity hub > User menu on the left-hand side panel.

Click on the blue “+Add New” button.

Enter the required information and scroll down to add further information

Click on the save button to move to the next configuration page, and copy the automatically generated password.

(Optional) Assign a group to the user.

(Option) Assign applications to the user.

Cymmetri login page