Customizing Terms and Conditions

Implementing OTP Anywhere 11-11

11.7 Registering SMS Processor to Perform Work for Challenge Type

The challenge type enum is used to associate a Challenge Type with the java code needed to perform any work related to that challenge type. The Challenge Type ID ChallengeEmail should match a rule action returned by the rules when that challenge type is going to be used. Channel normally refers to the delivery channel used to send an OTP to the user Email, SMS, or IM. The properties to register the SMS challenge processor and mark service as available or unavailable are listed below.

11.8 Configuring the Challenge Pads Used for Challenge Types

By default, challenge devices that will be used are configured through rules. The rules are under the AuthentiPad checkpoint where you can specify the type of device to use based on the purpose of the device. To createupdate policies to use the challenge type:

1. Add a new rule action, MyChallenge, with the enum, rule.action.enum.

2. Create policy to return newly created action, MyChallenge, to use the challenge

method. Alternatively, if you want to configure challenge devices using properties, you can bypass the AuthentiPad checkpoint by setting bharosa.uio.default.use.authentipad.checkpoint to false. Devices to use for the challenge type can be added. bharosa.uio.application.challengeType.authenticator.device=value The examples shown use the challenge type key, ChallengeEmail and ChallengeSMS to construct the property name. Table 11–15 Challenge type enums Property Description available if the challenge type is available for use service ready and configured. To enabledisable an OTP challenge type, the available flag should be set. processor java class for handling challenges of this type. requiredInfo comma separated list of inputs from the registration input enum Table 11–16 Properties to register the SMS challenge processor Property Default Value Description bharosa.uio.default.challenge.type.enum.ChallengeSMS 2 SMS Challenge enum value bharosa.uio.default.challenge.type.enum.ChallengeSMS.name SMS Challenge Name of SMS challenge type bharosa.uio.default.challenge.type.enum.ChallengeSMS.description SMS Challenge Description of SMS challenge type bharosa.uio.default.challenge.type.enum.ChallengeSMS.processor com.bharosa.uio.proces sor.challenge.Challeng eSMSProcessor Processor class for SMS challenge type bharosa.uio.default.challenge.type.enum.ChallengeSMS.requiredInfo mobile Required fields to challenge user with SMS challenge type bharosa.uio.default.challenge.type.enum.ChallengeSMS.available false Availability flag for SMS challenge type bharosa.uio.default.challenge.type.enum.ChallengeSMS.otp true OTP flag for SMS challenge type 11-12 Oracle Fusion Middleware Developers Guide for Oracle Adaptive Access Manager bharosa.uio.default.ChallengeSMS.authenticator.device=DevicePinPad bharosa.uio.default.ChallengeEmail.authenticator.device=DevicePinPad Available challenge device values are DeviceKeyPadFull, DeviceKeyPadAlpha, DeviceTextPad, DeviceQuestionPad, DevicePinPad, and DeviceHTMLControl.

11.9 Customizing OTP Anywhere Data Storage

This section describes how to customize data storage for OTP Anywhere. You can customize OTP Anywhere by implementing the com.bharosa.uio.manager.user.UserDataManagerIntf interface.

11.9.1 com.bharosa.uio.manager.user.UserDataManagerIntf

The methods used in customization are: ■ public String getUserDataUIOSessionData sessionData, String key; ■ public void setUserDataUIOSessionData sessionData, String key, String value;

11.9.2 Default Implementation - com.bharosa.uio.manager.user.DefaultContactInfoManager

The default implementation expands on the interface to break every get and set into two items: UserDataValue and UserDataFlag. The UserDataFlag is used by OAAM to track that a value has been set, or soft reset a value. When rules are used to check if a user is registered for a given item, the UserDataFlag will be checked in the OAAM database. The UserDataValue is the actual data element entered by the user. In the default implementation this is also stored in the OAAM database, but by extending the DefaultContactInfoManager class and overriding the UserDataValue methods getUserDataValue and setUserDataValue the data can be stored in an external location if required. Methods public class DefaultContactInfoManager implements UserDataManagerIntf { public String getUserDataUIOSessionData sessionData, String key{ if getUserDataFlagsessionData, key{ return getUserDataValuesessionData, key; Table 11–17 Authentication Device Type Property Description None No HTML page or authentication pad DeviceKeyPadFull Challenge user using KeyPad. DeviceKeyPadAlpha Challenge user with the alphanumeric KeyPad numbers and letters only, no special characters DeviceTextPad Challenge user using TextPad. DeviceQuestionPad Challenge user using QuestionPad. DevicePinPad Challenge user using PinPad. DeviceHTMLControl Challenge user using HTML page instead of an authentication pad.