Class ShAppCfgAuthsValue


  • @Generated("org.openapitools.codegen.languages.JavaClientCodegen")
    public class ShAppCfgAuthsValue
    extends java.lang.Object
    ShAppCfgAuthsValue
    • Field Detail

      • SERIALIZED_NAME_REMOTE

        public static final java.lang.String SERIALIZED_NAME_REMOTE
        See Also:
        Constant Field Values
      • SERIALIZED_NAME_REQUIRES_AUTH

        public static final java.lang.String SERIALIZED_NAME_REQUIRES_AUTH
        See Also:
        Constant Field Values
      • SERIALIZED_NAME_SKIP_ON_FAIL

        public static final java.lang.String SERIALIZED_NAME_SKIP_ON_FAIL
        See Also:
        Constant Field Values
      • SERIALIZED_NAME_RATE_LIMITER

        public static final java.lang.String SERIALIZED_NAME_RATE_LIMITER
        See Also:
        Constant Field Values
      • SERIALIZED_NAME_BURN_QUOTA

        public static final java.lang.String SERIALIZED_NAME_BURN_QUOTA
        See Also:
        Constant Field Values
      • SERIALIZED_NAME_QUERY

        public static final java.lang.String SERIALIZED_NAME_QUERY
        See Also:
        Constant Field Values
      • SERIALIZED_NAME_HEADERS

        public static final java.lang.String SERIALIZED_NAME_HEADERS
        See Also:
        Constant Field Values
      • SERIALIZED_NAME_CODE

        public static final java.lang.String SERIALIZED_NAME_CODE
        See Also:
        Constant Field Values
      • SERIALIZED_NAME_CODE_TTL

        public static final java.lang.String SERIALIZED_NAME_CODE_TTL
        See Also:
        Constant Field Values
      • SERIALIZED_NAME_SCOPES

        public static final java.lang.String SERIALIZED_NAME_SCOPES
        See Also:
        Constant Field Values
      • SERIALIZED_NAME_SERVER

        public static final java.lang.String SERIALIZED_NAME_SERVER
        See Also:
        Constant Field Values
      • SERIALIZED_NAME_SENDER

        public static final java.lang.String SERIALIZED_NAME_SENDER
        See Also:
        Constant Field Values
      • SERIALIZED_NAME_USERNAME

        public static final java.lang.String SERIALIZED_NAME_USERNAME
        See Also:
        Constant Field Values
      • SERIALIZED_NAME_PASSWORD

        public static final java.lang.String SERIALIZED_NAME_PASSWORD
        See Also:
        Constant Field Values
      • SERIALIZED_NAME_CONFIRMATION_URL

        public static final java.lang.String SERIALIZED_NAME_CONFIRMATION_URL
        See Also:
        Constant Field Values
      • SERIALIZED_NAME_TEMPLATES

        public static final java.lang.String SERIALIZED_NAME_TEMPLATES
        See Also:
        Constant Field Values
      • SERIALIZED_NAME_TEMPLATE_PARAMS

        public static final java.lang.String SERIALIZED_NAME_TEMPLATE_PARAMS
        See Also:
        Constant Field Values
      • SERIALIZED_NAME_IP_BYTES_TO_IGNORE

        public static final java.lang.String SERIALIZED_NAME_IP_BYTES_TO_IGNORE
        See Also:
        Constant Field Values
      • SERIALIZED_NAME_HISTORY_SIZE

        public static final java.lang.String SERIALIZED_NAME_HISTORY_SIZE
        See Also:
        Constant Field Values
      • SERIALIZED_NAME_EXCHANGE_AUTH_CODE

        public static final java.lang.String SERIALIZED_NAME_EXCHANGE_AUTH_CODE
        See Also:
        Constant Field Values
      • SERIALIZED_NAME_USER_INFO

        public static final java.lang.String SERIALIZED_NAME_USER_INFO
        See Also:
        Constant Field Values
      • SERIALIZED_NAME_EXTRACT_LOGIN

        public static final java.lang.String SERIALIZED_NAME_EXTRACT_LOGIN
        See Also:
        Constant Field Values
      • SERIALIZED_NAME_EXTRACT_PUBLIC_DATA

        public static final java.lang.String SERIALIZED_NAME_EXTRACT_PUBLIC_DATA
        See Also:
        Constant Field Values
      • SERIALIZED_NAME_MAX_LENGTH

        public static final java.lang.String SERIALIZED_NAME_MAX_LENGTH
        See Also:
        Constant Field Values
      • SERIALIZED_NAME_MIN_LENGTH

        public static final java.lang.String SERIALIZED_NAME_MIN_LENGTH
        See Also:
        Constant Field Values
      • SERIALIZED_NAME_REQUIRE_NUMBER

        public static final java.lang.String SERIALIZED_NAME_REQUIRE_NUMBER
        See Also:
        Constant Field Values
      • SERIALIZED_NAME_REQUIRE_SYMBOL

        public static final java.lang.String SERIALIZED_NAME_REQUIRE_SYMBOL
        See Also:
        Constant Field Values
      • SERIALIZED_NAME_REQUIRE_UPPER_CASE

        public static final java.lang.String SERIALIZED_NAME_REQUIRE_UPPER_CASE
        See Also:
        Constant Field Values
      • SERIALIZED_NAME_FORBID_COMMON_PASSWORDS

        public static final java.lang.String SERIALIZED_NAME_FORBID_COMMON_PASSWORDS
        See Also:
        Constant Field Values
      • SERIALIZED_NAME_FORBID_LOGIN_AS_PASSWORD

        public static final java.lang.String SERIALIZED_NAME_FORBID_LOGIN_AS_PASSWORD
        See Also:
        Constant Field Values
      • SERIALIZED_NAME_FORBID_REUSING_PASSWORD

        public static final java.lang.String SERIALIZED_NAME_FORBID_REUSING_PASSWORD
        See Also:
        Constant Field Values
      • SERIALIZED_NAME_STRENGTH

        public static final java.lang.String SERIALIZED_NAME_STRENGTH
        See Also:
        Constant Field Values
      • SERIALIZED_NAME_LOWERCASE

        public static final java.lang.String SERIALIZED_NAME_LOWERCASE
        See Also:
        Constant Field Values
      • SERIALIZED_NAME_REMOVE_SYMBOLS

        public static final java.lang.String SERIALIZED_NAME_REMOVE_SYMBOLS
        See Also:
        Constant Field Values
      • SERIALIZED_NAME_REMOVE_SPACES

        public static final java.lang.String SERIALIZED_NAME_REMOVE_SPACES
        See Also:
        Constant Field Values
      • SERIALIZED_NAME_ANSWERS_REQUIRED

        public static final java.lang.String SERIALIZED_NAME_ANSWERS_REQUIRED
        See Also:
        Constant Field Values
      • SERIALIZED_NAME_MAX_ANSWERS

        public static final java.lang.String SERIALIZED_NAME_MAX_ANSWERS
        See Also:
        Constant Field Values
      • SERIALIZED_NAME_ENCRYPT_KEY

        public static final java.lang.String SERIALIZED_NAME_ENCRYPT_KEY
        See Also:
        Constant Field Values
      • openapiFields

        public static java.util.HashSet<java.lang.String> openapiFields
      • openapiRequiredFields

        public static java.util.HashSet<java.lang.String> openapiRequiredFields
    • Constructor Detail

      • ShAppCfgAuthsValue

        public ShAppCfgAuthsValue()
    • Method Detail

      • getRemote

        @Nullable
        public java.lang.String getRemote()
        Path to the API that implements plugin.
        Returns:
        remote
      • setRemote

        public void setRemote​(java.lang.String remote)
      • requiresAuth

        public ShAppCfgAuthsValue requiresAuth​(java.util.List<java.util.List<java.lang.String>> requiresAuth)
      • addRequiresAuthItem

        public ShAppCfgAuthsValue addRequiresAuthItem​(java.util.List<java.lang.String> requiresAuthItem)
      • getRequiresAuth

        @Nullable
        public java.util.List<java.util.List<java.lang.String>> getRequiresAuth()
        If this is not null, app forbids to add this auth until listed auth enabled. - if this a string -> require specified auth to be enabled before this. - array of strings -> require any of listed auths to be enabled - array of arrays of strings -> works as `[ [ \"auth1\" and \"auth2\" ] or [ \"auth1\" and \"auth2\" ] ]`
        Returns:
        requiresAuth
      • setRequiresAuth

        public void setRequiresAuth​(java.util.List<java.util.List<java.lang.String>> requiresAuth)
      • getSkipOnFail

        @Nullable
        public java.lang.Boolean getSkipOnFail()
        When this is set to true app will attempt next auth in case of error on current. It's works good with IP auth. User can provide both IP auth request and SMS auth request. And SMS will be executed only when IP auth is failed. If set to false any error on this auth will stop the whole request execution.
        Returns:
        skipOnFail
      • setSkipOnFail

        public void setSkipOnFail​(java.lang.Boolean skipOnFail)
      • getRateLimiter

        @Nullable
        public java.lang.String getRateLimiter()
        Apply rate limiter for this auth.
        Returns:
        rateLimiter
      • setRateLimiter

        public void setRateLimiter​(java.lang.String rateLimiter)
      • getBurnQuota

        @Nullable
        public java.lang.Double getBurnQuota()
        Every auth execution will burn this amount of quota. Takes place only when rate limiter is specified
        Returns:
        burnQuota
      • setBurnQuota

        public void setBurnQuota​(java.lang.Double burnQuota)
      • query

        public ShAppCfgAuthsValue query​(java.util.Map<java.lang.String,​java.lang.String> query)
      • putQueryItem

        public ShAppCfgAuthsValue putQueryItem​(java.lang.String key,
                                               java.lang.String queryItem)
      • getQuery

        @Nullable
        public java.util.Map<java.lang.String,​java.lang.String> getQuery()
        Add query params after `?` symbol in url.
        Returns:
        query
      • setQuery

        public void setQuery​(java.util.Map<java.lang.String,​java.lang.String> query)
      • headers

        public ShAppCfgAuthsValue headers​(java.util.Map<java.lang.String,​java.lang.String> headers)
      • putHeadersItem

        public ShAppCfgAuthsValue putHeadersItem​(java.lang.String key,
                                                 java.lang.String headersItem)
      • getHeaders

        @Nullable
        public java.util.Map<java.lang.String,​java.lang.String> getHeaders()
        Add headers to request.
        Returns:
        headers
      • setHeaders

        public void setHeaders​(java.util.Map<java.lang.String,​java.lang.String> headers)
      • getCode

        @Nullable
        public CodeCfg getCode()
        Get code
        Returns:
        code
      • setCode

        public void setCode​(CodeCfg code)
      • getCodeTtl

        @Nullable
        public java.lang.String getCodeTtl()
        Authorization code lifetime.
        Returns:
        codeTtl
      • setCodeTtl

        public void setCodeTtl​(java.lang.String codeTtl)
      • addScopesItem

        public ShAppCfgAuthsValue addScopesItem​(java.lang.String scopesItem)
      • getScopes

        @Nullable
        public java.util.List<java.lang.String> getScopes()
        Get scopes
        Returns:
        scopes
      • setScopes

        public void setScopes​(java.util.List<java.lang.String> scopes)
      • getServer

        @Nullable
        public java.lang.String getServer()
        Email server address/IP.
        Returns:
        server
      • setServer

        public void setServer​(java.lang.String server)
      • getSender

        @Nullable
        public java.lang.String getSender()
        Email address of sender.
        Returns:
        sender
      • setSender

        public void setSender​(java.lang.String sender)
      • getUsername

        @Nullable
        public java.lang.String getUsername()
        SMTP username.
        Returns:
        username
      • setUsername

        public void setUsername​(java.lang.String username)
      • getPassword

        @Nullable
        public java.lang.String getPassword()
        SMTP password.
        Returns:
        password
      • setPassword

        public void setPassword​(java.lang.String password)
      • confirmationUrl

        public ShAppCfgAuthsValue confirmationUrl​(java.lang.String confirmationUrl)
      • getConfirmationUrl

        @Nullable
        public java.lang.String getConfirmationUrl()
        If not null, server will create template param `confirmationUrl` that will contain query parameters with confirmation code, session id, etc.
        Returns:
        confirmationUrl
      • setConfirmationUrl

        public void setConfirmationUrl​(java.lang.String confirmationUrl)
      • templates

        public ShAppCfgAuthsValue templates​(java.util.Map<java.lang.String,​java.lang.String> templates)
      • putTemplatesItem

        public ShAppCfgAuthsValue putTemplatesItem​(java.lang.String key,
                                                   java.lang.String templatesItem)
      • getTemplates

        @Nullable
        public java.util.Map<java.lang.String,​java.lang.String> getTemplates()
        List of email templates. Key - is name of a template (can be used lately on frontend), value - is path to the template. App uses handlebars templates to generate emails. See docs here https://handlebarsjs.com Email templates receives `confirmationUrl`, `action`, `user`, `session`, `codeId`, `code`, `codeExpiresInMinutes`, `lang`, `headers` as template params, e.g. you can print user id as `{{user.id}}`. Template engine also provides `i18n` helper for localisation. E.g. `{{i18n 'confirmationButton' default='Confirm'}}` searches key `confirmationButton` in files specified by `i18n.dir` config. Use `{{err ERR_CODE msg='Localised message (if null, will be taken from i18n file)' devMsg='dev message'}}` to raise an error in a template. It allows setting subject of email using `title` html tag, e.g. `<title>Email subject</title>`.
        Returns:
        templates
      • setTemplates

        public void setTemplates​(java.util.Map<java.lang.String,​java.lang.String> templates)
      • templateParams

        public ShAppCfgAuthsValue templateParams​(java.util.Map<java.lang.String,​java.lang.Object> templateParams)
      • putTemplateParamsItem

        public ShAppCfgAuthsValue putTemplateParamsItem​(java.lang.String key,
                                                        java.lang.Object templateParamsItem)
      • getTemplateParams

        @Nullable
        public java.util.Map<java.lang.String,​java.lang.Object> getTemplateParams()
        Additional params for templates that can be passed in request. Key - is a name of additional parameter, value - is a default value for this parameter (when no value present in request)
        Returns:
        templateParams
      • setTemplateParams

        public void setTemplateParams​(java.util.Map<java.lang.String,​java.lang.Object> templateParams)
      • ipBytesToIgnore

        public ShAppCfgAuthsValue ipBytesToIgnore​(java.lang.Integer ipBytesToIgnore)
      • getIpBytesToIgnore

        @Nullable
        public java.lang.Integer getIpBytesToIgnore()
        This allows to drop last bytes of IP. So it allows to authenticate factor when ip has rough match, e.g. the same country, same city, or same internet provider.
        Returns:
        ipBytesToIgnore
      • setIpBytesToIgnore

        public void setIpBytesToIgnore​(java.lang.Integer ipBytesToIgnore)
      • getHistorySize

        @Nullable
        public java.lang.Integer getHistorySize()
        History of IP addresses user used to sign-in. Authenticated when user attempts to sign in with one of stored IPs.
        Returns:
        historySize
      • setHistorySize

        public void setHistorySize​(java.lang.Integer historySize)
      • getExchangeAuthCode

        @Nullable
        public OAuthCfgExchangeAuthCode getExchangeAuthCode()
        Get exchangeAuthCode
        Returns:
        exchangeAuthCode
      • getUserInfo

        @Nullable
        public OAuthCfgUserInfo getUserInfo()
        Get userInfo
        Returns:
        userInfo
      • extractLogin

        public ShAppCfgAuthsValue extractLogin​(java.lang.String extractLogin)
      • getExtractLogin

        @Nullable
        public java.lang.String getExtractLogin()
        Json path for login in the exchangeAuthCode or userInfo endpoint response. e.g. `access_token.user.id` extracts user login from `{ \"access_token\": { \"user\": { \"id\": \"...\" } } }`
        Returns:
        extractLogin
      • setExtractLogin

        public void setExtractLogin​(java.lang.String extractLogin)
      • extractPublicData

        public ShAppCfgAuthsValue extractPublicData​(java.util.Map<java.lang.String,​java.lang.String> extractPublicData)
      • putExtractPublicDataItem

        public ShAppCfgAuthsValue putExtractPublicDataItem​(java.lang.String key,
                                                           java.lang.String extractPublicDataItem)
      • getExtractPublicData

        @Nullable
        public java.util.Map<java.lang.String,​java.lang.String> getExtractPublicData()
        Can fill public data from the exchangeAuthCode or userInfo endpoint response.
        Returns:
        extractPublicData
      • setExtractPublicData

        public void setExtractPublicData​(java.util.Map<java.lang.String,​java.lang.String> extractPublicData)
      • getMaxLength

        @Nullable
        public java.lang.Integer getMaxLength()
        Max length of answer.
        Returns:
        maxLength
      • setMaxLength

        public void setMaxLength​(java.lang.Integer maxLength)
      • getMinLength

        @Nullable
        public java.lang.Integer getMinLength()
        Min length of answer. Length are checked after all answer transformation.
        Returns:
        minLength
      • setMinLength

        public void setMinLength​(java.lang.Integer minLength)
      • requireNumber

        public ShAppCfgAuthsValue requireNumber​(java.lang.Boolean requireNumber)
      • getRequireNumber

        @Nullable
        public java.lang.Boolean getRequireNumber()
        Require password to contain at least one digit.
        Returns:
        requireNumber
      • setRequireNumber

        public void setRequireNumber​(java.lang.Boolean requireNumber)
      • requireSymbol

        public ShAppCfgAuthsValue requireSymbol​(java.lang.Boolean requireSymbol)
      • getRequireSymbol

        @Nullable
        public java.lang.Boolean getRequireSymbol()
        Require password to contain at least one symbol e.g. @, !, &...
        Returns:
        requireSymbol
      • setRequireSymbol

        public void setRequireSymbol​(java.lang.Boolean requireSymbol)
      • requireUpperCase

        public ShAppCfgAuthsValue requireUpperCase​(java.lang.Boolean requireUpperCase)
      • getRequireUpperCase

        @Nullable
        public java.lang.Boolean getRequireUpperCase()
        This requires password to contain both lowercase and uppercase letters.
        Returns:
        requireUpperCase
      • setRequireUpperCase

        public void setRequireUpperCase​(java.lang.Boolean requireUpperCase)
      • forbidCommonPasswords

        public ShAppCfgAuthsValue forbidCommonPasswords​(java.lang.Boolean forbidCommonPasswords)
      • getForbidCommonPasswords

        @Nullable
        public java.lang.Boolean getForbidCommonPasswords()
        Password will be checked against table 1,000,000 of most overused passwords.
        Returns:
        forbidCommonPasswords
      • setForbidCommonPasswords

        public void setForbidCommonPasswords​(java.lang.Boolean forbidCommonPasswords)
      • forbidLoginAsPassword

        public ShAppCfgAuthsValue forbidLoginAsPassword​(java.lang.Boolean forbidLoginAsPassword)
      • getForbidLoginAsPassword

        @Nullable
        public java.lang.Boolean getForbidLoginAsPassword()
        Rejects passwords that match username, email, anything that used as a login according to logins config.
        Returns:
        forbidLoginAsPassword
      • setForbidLoginAsPassword

        public void setForbidLoginAsPassword​(java.lang.Boolean forbidLoginAsPassword)
      • getForbidReusingPassword

        @Nullable
        public PasswordHistoryCfg getForbidReusingPassword()
        Get forbidReusingPassword
        Returns:
        forbidReusingPassword
      • setForbidReusingPassword

        public void setForbidReusingPassword​(PasswordHistoryCfg forbidReusingPassword)
      • getStrength

        @Nullable
        public java.util.Map<java.lang.String,​PasswordStrengthRequirements> getStrength()
        Allows to calculate password strength based on mentioned criteria. Requirements will be checked one by one until first failed.
        Returns:
        strength
      • getLowercase

        @Nullable
        public java.lang.Boolean getLowercase()
        Transform user answer to lowercase letters. This allows user still pass a check when he wrote name or city with different cases. `false` means strict match, so \"John\" != \"john\"
        Returns:
        lowercase
      • setLowercase

        public void setLowercase​(java.lang.Boolean lowercase)
      • removeSymbols

        public ShAppCfgAuthsValue removeSymbols​(java.lang.Boolean removeSymbols)
      • getRemoveSymbols

        @Nullable
        public java.lang.Boolean getRemoveSymbols()
        Remove all non-letters from user answer.
        Returns:
        removeSymbols
      • setRemoveSymbols

        public void setRemoveSymbols​(java.lang.Boolean removeSymbols)
      • removeSpaces

        public ShAppCfgAuthsValue removeSpaces​(java.lang.Boolean removeSpaces)
      • getRemoveSpaces

        @Nullable
        public java.lang.Boolean getRemoveSpaces()
        Remove all spaces from user answer.
        Returns:
        removeSpaces
      • setRemoveSpaces

        public void setRemoveSpaces​(java.lang.Boolean removeSpaces)
      • answersRequired

        public ShAppCfgAuthsValue answersRequired​(java.lang.Integer answersRequired)
      • getAnswersRequired

        @Nullable
        public java.lang.Integer getAnswersRequired()
        Min number of answers required to pass this check.
        Returns:
        answersRequired
      • setAnswersRequired

        public void setAnswersRequired​(java.lang.Integer answersRequired)
      • getMaxAnswers

        @Nullable
        public java.lang.Integer getMaxAnswers()
        Max answers that user can save.
        Returns:
        maxAnswers
      • setMaxAnswers

        public void setMaxAnswers​(java.lang.Integer maxAnswers)
      • getEncryptKey

        @Nullable
        public java.lang.String getEncryptKey()
        Get encryptKey
        Returns:
        encryptKey
      • setEncryptKey

        public void setEncryptKey​(java.lang.String encryptKey)
      • putAdditionalProperty

        public ShAppCfgAuthsValue putAdditionalProperty​(java.lang.String key,
                                                        java.lang.Object value)
        Set the additional (undeclared) property with the specified name and value. If the property does not already exist, create it otherwise replace it.
      • getAdditionalProperties

        public java.util.Map<java.lang.String,​java.lang.Object> getAdditionalProperties()
        Return the additional (undeclared) property.
      • getAdditionalProperty

        public java.lang.Object getAdditionalProperty​(java.lang.String key)
        Return the additional (undeclared) property with the specified name.
      • equals

        public boolean equals​(java.lang.Object o)
        Overrides:
        equals in class java.lang.Object
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object
      • validateJsonObject

        public static void validateJsonObject​(com.google.gson.JsonObject jsonObj)
                                       throws java.io.IOException
        Validates the JSON Object and throws an exception if issues found
        Parameters:
        jsonObj - JSON Object
        Throws:
        java.io.IOException - if the JSON Object is invalid with respect to ShAppCfgAuthsValue
      • fromJson

        public static ShAppCfgAuthsValue fromJson​(java.lang.String jsonString)
                                           throws java.io.IOException
        Create an instance of ShAppCfgAuthsValue given an JSON string
        Parameters:
        jsonString - JSON string
        Returns:
        An instance of ShAppCfgAuthsValue
        Throws:
        java.io.IOException - if the JSON string is invalid with respect to ShAppCfgAuthsValue
      • toJson

        public java.lang.String toJson()
        Convert an instance of ShAppCfgAuthsValue to an JSON string
        Returns:
        JSON string