Class JAASCredentialValidator

    • Field Detail

      • log

        @Nonnull
        private final org.slf4j.Logger log
        Class logger.
      • loginConfigType

        @Nullable
        private String loginConfigType
        Type of JAAS Configuration to instantiate.
      • loginConfigResource

        @Nullable
        private Resource loginConfigResource
        JAAS configuration resource.
      • loginConfigParameters

        @Nullable
        private Configuration.Parameters loginConfigParameters
        Type-specific configuration parameters.
    • Constructor Detail

      • JAASCredentialValidator

        public JAASCredentialValidator()
        Constructor.
    • Method Detail

      • getLoginConfigType

        @Nullable
        public String getLoginConfigType()
        Get the type of JAAS Configuration to use.
        Returns:
        the type of JAAS configuration to use
      • setLoginConfigType

        public void setLoginConfigType​(@Nullable
                                       String type)
        Set the type of JAAS Configuration to use.
        Parameters:
        type - the type of JAAS configuration to use
      • getLoginConfigParameters

        @Nullable
        public Configuration.Parameters getLoginConfigParameters()
        Get the type-specific parameters of the JAAS Configuration to use.
        Returns:
        the JAAS configuration parameters to use
      • setLoginConfigParameters

        public void setLoginConfigParameters​(@Nullable
                                             URI uri)
        Set a URI to use as a JAAS configuration parameter.
        Parameters:
        uri - the JAAS configuration URI parameters to use
      • setLoginConfigResource

        public void setLoginConfigResource​(@Nullable
                                           Resource resource)
        Set a login configuration resource to use.
        Parameters:
        resource - resource to use
        Since:
        4.1.0
      • setLoginConfigurations

        public void setLoginConfigurations​(@Nullable
                                           Collection<Pair<String,​Collection<Principal>>> configs)
        Set the JAAS application name(s) to use, along with an optional collection of custom principals to apply to the result.
        Parameters:
        configs - list of JAAS application names and custom principals to use
      • setLoginConfigNames

        public void setLoginConfigNames​(@Nullable @NonnullElements
                                        Collection<String> names)
        Set the JAAS application name(s) to use.
        Parameters:
        names - list of JAAS application names to use
      • setLoginConfigStrategy

        public void setLoginConfigStrategy​(@Nullable
                                           Function<ProfileRequestContext,​Collection<Pair<String,​Subject>>> strategy)
        Set the strategy function to use to obtain the JAAS application configuration(s) to use.
        Parameters:
        strategy - strategy function
      • populateSubject

        @Nonnull
        protected Subject populateSubject​(@Nonnull
                                          Subject subject,
                                          @Nullable
                                          Subject derivedSubject,
                                          @Nonnull
                                          UsernamePasswordContext usernamePasswordContext)
        Finish decorating the result.
        Parameters:
        subject - the JAAS result
        derivedSubject - container for additional principals
        usernamePasswordContext - input context
        Returns:
        final result