Class DuoClient


  • public class DuoClient
    extends Object
    A client to communicate with Duo security
    Since:
    8.7.3
    Author:
    Marco Meschieri - LogicalDOC
    • Constructor Detail

      • DuoClient

        public DuoClient​(String integrationId,
                         String sectetKey,
                         String apiHost)
    • Method Detail

      • healthCheck

        public boolean healthCheck()
      • auth

        public String auth​(String username,
                           String factor,
                           String passcode,
                           String device)
        Executes an authorization call
        Parameters:
        username - the user identifier in Duo
        factor - one of the available factors: passcode, sms, push, phone
        passcode - the passcode
        device - optional device specification
        Returns:
        allow, deny or the transaction ID in case of async invocation, null in case of error
      • authPasscode

        public String authPasscode​(String username,
                                   String passcode)
        Authorizes using a passcode. This method is synchronous.
        Parameters:
        username - the user identifier in Duo
        passcode - the passcode
        Returns:
        allow, deny or null in case of error
      • authPush

        public String authPush​(String username,
                               String device)
        Authorizes using the push mechanism. This method is synchronous.
        Parameters:
        username - the user identifier in Duo
        device - the identifier of the device to use or put 'auto'
        Returns:
        allow, deny or null in case of error
      • authSMS

        public String authSMS​(String username,
                              String device)
        Authorizes using the SMS. This method is asynchronous.
        Parameters:
        username - the user identifier in Duo
        device - the identifier of the device to use or put 'auto'
        Returns:
        allow, deny or null in case of error
      • authPhone

        public String authPhone​(String username,
                                String device)
        Authorizes using the phone call. This method is asynchronous.
        Parameters:
        username - the user identifier in Duo
        device - the identifier of the device to use or put 'auto'
        Returns:
        allow, deny or null in case of error