UserPresenceChallenge

public final class UserPresenceChallenge : NSObject, ChallengeProtocol

The simple user presence challenge prompts the user to acknowledge.

  • Initializes a new UserPresenceChallenge mechanism.

    Declaration

    Swift

    required public convenience override init()
  • Initializes a new UserPresenceChallenge mechanism.

    Declaration

    Swift

    required public init(messagePrompt: String)

    Parameters

    messagePrompt

    The message to display in the alert when prompted.

  • The name of the mechanism.

    Declaration

    Swift

    open var name: String { get }
  • The description of the mechanism.

    Declaration

    Swift

    open override var description: String { get }
  • The identifier of the mechanism.

    Remark

    The identifier value is: urn:ibm:security:authentication:asf:mechanism:mobile_user_approval:user_presence.

    Declaration

    Swift

    open var identifier: String { get }
  • The postback URI of the mechanism.

    Remark

    This value is set in the parse method.

    Declaration

    Swift

    open var postbackUri: String
  • The state represents the unique identifier of the machanism request.

    Remark

    This value is set in the parse method.

    Declaration

    Swift

    open var state: String
  • The message to display in the alert when prompted.

    Declaration

    Swift

    open fileprivate(set) var messagePrompt: String
  • An array of String representing names of key handles.

    Declaration

    Swift

    open fileprivate(set) var keyHandles: [String]
  • The text representing the server challenge which requires signing.

    Declaration

    Swift

    open fileprivate(set) var challengeText: String
  • The dictionary represeting the data that will be returned in the UserPresenceChallenge.launchUI function.

    Remark

    The default is to return the challenge unsigned.

    Declaration

    Swift

    open var challengeData: [String : Any]
  • The type of the enrollment challenge.

    Declaration

    Swift

    open var type: String { get }
  • The type’s identifier, used to access the private key in the keychain. Only one challenge of this type can be enrolled, so there’s no overlap.

    Declaration

    Swift

    open var keyName: String
  • Initializes a new challenge mechanism.

    Throws

    IBMMobileKitError.invalidDataFromServer

    Declaration

    Swift

    public func parse(_ data: [String : Any]) throws -> UserPresenceChallenge

    Parameters

    data

    A data object containing JSON data.

    Return Value

    The instance of UserPresenceChallenge.

  • This method launches an UIAlertController thats prompts prompts the user for presence confirmation.

    Declaration

    Swift

    open func launchUI(_ viewController: UIViewController, completion: @escaping (_ data: [String:Any], _ error: Error?) -> Void)

    Parameters

    viewController

    The view controller that is presented by this view controller, or one of its ancestors in the view controller hierarchy.

    completion

    The data to verify represented as an dictionary of String:Any and Error object to identify an error.

  • This method launches an UIAlertController thats prompts prompts the user for presence confirmation.

    Declaration

    Swift

    open func launchUI(_ completion: @escaping (_ data: [String:Any], _ error: Error?) -> Void)

    Parameters

    completion

    The data to verify represented as an dictionary of String:String? and Error object to identify an error.