You are here

class AuthenticationAPIHandler in Google Authenticator / 2 Factor Authentication - 2FA 8

Same name and namespace in other branches
  1. 8.2 src/AuthenticationAPIHandler.php \Drupal\miniorange_2fa\AuthenticationAPIHandler

Hierarchy

Expanded class hierarchy of AuthenticationAPIHandler

17 files declare their use of AuthenticationAPIHandler
authenticate_user.php in src/Form/authenticate_user.php
This is used to authenticate user during login.
configure_google_authenticator.php in src/Form/configure_google_authenticator.php
configure_kba.php in src/Form/configure_kba.php
configure_otp_over_email.php in src/Form/configure_otp_over_email.php
configure_otp_over_phone.php in src/Form/configure_otp_over_phone.php

... See full list

File

src/AuthenticationAPIHandler.php, line 4

Namespace

Drupal\miniorange_2fa
View source
class AuthenticationAPIHandler {
  private $customerId;
  private $apiKey;
  public function __construct($customerId, $apiKey) {
    $this->apiKey = $apiKey;
    $this->customerId = $customerId;
  }
  public function challenge(MiniorangeUser $user) {
    $fields = array(
      'customerKey' => $user
        ->getCustomerId(),
      'username' => $user
        ->getUsername(),
      'email' => $user
        ->getEmail(),
      'phone' => $user
        ->getPhone(),
      'authType' => $user
        ->getAuthType(),
      'transactionName' => MoAuthConstants::$TRANSACTION_NAME,
    );
    $json = json_encode($fields);
    $url = MoAuthConstants::$AUTH_CHALLENGE_API;
    return MoAuthUtilities::callService($this->customerId, $this->apiKey, $url, $json);
  }
  public function validate(MiniorangeUser $user, $txId, $token, $answers = NULL) {
    $fields = array(
      'customerKey' => $user
        ->getCustomerId(),
      'username' => $user
        ->getUsername(),
      'txId' => $txId,
      'token' => $token,
      'authType' => $user
        ->getAuthType(),
      'answers' => $answers,
    );
    $json = json_encode($fields);
    $url = MoAuthConstants::$AUTH_VALIDATE_API;
    return MoAuthUtilities::callService($this->customerId, $this->apiKey, $url, $json);
  }
  public function getAuthStatus($txId) {
    $fields = array(
      'txId' => $txId,
    );
    $json = json_encode($fields);
    $url = MoAuthConstants::$AUTH_STATUS_API;
    return MoAuthUtilities::callService($this->customerId, $this->apiKey, $url, $json);
  }
  public function getGoogleAuthSecret(MiniorangeUser $user) {
    $fields = array(
      'customerKey' => $user
        ->getCustomerId(),
      'username' => $user
        ->getUsername(),
    );
    $json = json_encode($fields);
    $url = MoAuthConstants::$AUTH_GET_GOOGLE_AUTH_API;
    return MoAuthUtilities::callService($this->customerId, $this->apiKey, $url, $json);
  }
  public function register(MiniorangeUser $user, $registrationType, $secret, $token, $quesAnsList) {
    $fields = array(
      'customerKey' => $user
        ->getCustomerId(),
      'username' => $user
        ->getUsername(),
      'registrationType' => $registrationType,
      'secret' => $secret,
      'otpToken' => $token,
      'questionAnswerList' => $quesAnsList,
    );
    $json = json_encode($fields);
    $url = MoAuthConstants::$AUTH_REGISTER_API;
    return MoAuthUtilities::callService($this->customerId, $this->apiKey, $url, $json);
  }
  public function getRegistrationStatus($txId) {
    $fields = array(
      'txId' => $txId,
    );
    $json = json_encode($fields);
    $url = MoAuthConstants::$AUTH_REGISTRATION_STATUS_API;
    return MoAuthUtilities::callService($this->customerId, $this->apiKey, $url, $json);
  }

}

Members