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)
  • The name of the mechanism.

    Declaration

    Swift

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

    Declaration

    Swift

    open override var description: String
  • 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
  • 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] = ["signedChallenge": ""]
  • The type of the enrollment challenge.

    Declaration

    Swift

    open var type: String
  • 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 = ""
  • Initializes a new challenge mechanism.

    Throws

    IBMMobileKitError.invalidDataFromServer

    Declaration

    Swift

    public func parse(_ data: [String:Any]) throws -> 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)
  • 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)