Authentication Factor

auth_factor

An Authentication Factor object describes a category of methods used for identity verification in an authentication attempt.

Contents

Attributes

Caption Name Type Is Array Default Description
Device device Device Device used to complete an authentication request.
Email Address email_addr Email Address The email address used in an email-based authentication factor.
Factor Type factor_type String The type of authentication factor used in an authentication attempt.
Factor Type ID factor_type_id Integer The normalized identifier for the authentication factor.
0
Unknown
1
SMS
2
Security Question
3
Phone Call
4
Biometric
5
Push Notification
6
Hardware Token
7
OTP
8
Email
9
U2F
10
WebAuthn
11
Password
99
Other
HMAC-based One-time Password (HOTP) is_hotp Boolean Whether the authentication factor is an HMAC-based One-time Password (HOTP).
Time-based One-time Password (TOTP) is_totp Boolean Whether the authentication factor is a Time-based One-time Password (TOTP).
Phone Number phone_number String The phone number used for a telephony-based authentication request.
Provider provider String The name of provider for an authentication factor.
Raw Data raw_data JSON The event data as received from the event source.
Record ID record_id String Unique identifier for the object
Security Questions security_questions String The question(s) provided to user for a question-based authentication factor.
Unmapped Data unmapped Unmapped The attributes that are not mapped to the event schema. The names and values of those attributes are specific to the event source.

References

Referenced By

Context

Authentication Factor

JSON

            
{
  "caption": "Authentication Factor",
  "description": "An Authentication Factor object describes a category of methods used for identity verification in an authentication attempt.",
  "name": "auth_factor",
  "extends": "object",
  "attributes": {
    "factor_type": {
      "requirement": "recommended",
      "group": "primary",
      "caption": "Factor Type",
      "description": "The type of authentication factor used in an authentication attempt.",
      "type": "string_t"
    },
    "factor_type_id": {
      "requirement": "required",
      "group": "primary",
      "caption": "Factor Type ID",
      "description": "The normalized identifier for the authentication factor.",
      "sibling": "factor_type",
      "type": "integer_t",
      "enum": {
        "0": {
          "caption": "Unknown"
        },
        "1": {
          "caption": "SMS",
          "description": "User receives and inputs a code sent to their mobile device via SMS text message."
        },
        "2": {
          "caption": "Security Question",
          "description": "The user responds to a security question as part of a question-based authentication factor"
        },
        "3": {
          "caption": "Phone Call",
          "description": "System calls the user's registered phone number and requires the user to answer and provide a response."
        },
        "4": {
          "caption": "Biometric",
          "description": "Devices that verify identity-based on user's physical identifiers, such as fingerprint scanners or retina scanners."
        },
        "5": {
          "caption": "Push Notification",
          "description": "Push notification is sent to user's registered device and requires the user to acknowledge."
        },
        "6": {
          "caption": "Hardware Token",
          "description": "Physical device that generates a code to be used for authentication."
        },
        "7": {
          "caption": "OTP",
          "description": "Application generates a one-time password (OTP) for use in authentication."
        },
        "8": {
          "caption": "Email",
          "description": "A code or link is sent to a user's registered email address."
        },
        "9": {
          "caption": "U2F",
          "description": "Typically involves a hardware token, which the user physically interacts with to authenticate."
        },
        "10": {
          "caption": "WebAuthn",
          "description": "Web-based API that enables users to register devices as authentication factors."
        },
        "11": {
          "caption": "Password",
          "description": "The user enters a password that they have previously established."
        },
        "99": {
          "caption": "Other"
        }
      }
    },
    "device": {
      "description": "Device used to complete an authentication request.",
      "requirement": "recommended",
      "group": "primary",
      "caption": "Device",
      "type": "device"
    },
    "provider": {
      "description": "The name of provider for an authentication factor.",
      "requirement": "recommended",
      "group": "context",
      "caption": "Provider",
      "type": "string_t"
    },
    "is_totp": {
      "requirement": "recommended",
      "group": "context",
      "caption": "Time-based One-time Password (TOTP)",
      "description": "Whether the authentication factor is a Time-based One-time Password (TOTP).",
      "type": "boolean_t"
    },
    "is_hotp": {
      "requirement": "recommended",
      "group": "context",
      "caption": "HMAC-based One-time Password (HOTP)",
      "description": "Whether the authentication factor is an HMAC-based One-time Password (HOTP).",
      "type": "boolean_t"
    },
    "security_questions": {
      "requirement": "optional",
      "group": "context",
      "caption": "Security Questions",
      "description": "The question(s) provided to user for a question-based authentication factor.",
      "type": "string_t",
      "is_array": true
    },
    "phone_number": {
      "description": "The phone number used for a telephony-based authentication request.",
      "requirement": "optional",
      "group": "context",
      "caption": "Phone Number",
      "type": "string_t"
    },
    "email_addr": {
      "description": "The email address used in an email-based authentication factor.",
      "requirement": "optional",
      "group": "context",
      "caption": "Email Address",
      "type": "email_t"
    },
    "raw_data": {
      "group": "context",
      "caption": "Raw Data",
      "description": "The event data as received from the event source.",
      "type": "json_t"
    },
    "record_id": {
      "description": "Unique identifier for the object",
      "group": "primary",
      "requirement": "required",
      "caption": "Record ID",
      "type": "string_t"
    },
    "unmapped": {
      "caption": "Unmapped Data",
      "description": "The attributes that are not mapped to the event schema. The names and values of those attributes are specific to the event source.",
      "type": "unmapped",
      "is_array": true
    }
  },
  "constraints": {
    "just_one": [
      "email_addr",
      "phone_number",
      "security_questions"
    ]
  }
}