Interface GlobalAccessControlPolicyCfg

  • All Superinterfaces:
    Configuration

    public interface GlobalAccessControlPolicyCfg
    extends Configuration
    A server-side interface for querying Global Access Control Policy settings.

    Provides coarse grained access control for all operations, regardless of whether they are destined for local or proxy backends. Global access control policies are applied in addition to ACIs and privileges.

    • Method Detail

      • configurationClass

        Class<? extends GlobalAccessControlPolicyCfg> configurationClass()
        Gets the configuration class associated with this Global Access Control Policy.
        Specified by:
        configurationClass in interface Configuration
        Returns:
        Returns the configuration class associated with this Global Access Control Policy.
      • addChangeListener

        void addChangeListener​(ConfigurationChangeListener<GlobalAccessControlPolicyCfg> listener)
        Register to be notified when this Global Access Control Policy is changed.
        Parameters:
        listener - The Global Access Control Policy configuration change listener.
      • removeChangeListener

        void removeChangeListener​(ConfigurationChangeListener<GlobalAccessControlPolicyCfg> listener)
        Deregister an existing Global Access Control Policy configuration change listener.
        Parameters:
        listener - The Global Access Control Policy configuration change listener.
      • getAllowedAttribute

        SortedSet<String> getAllowedAttribute()
        Gets the "allowed-attribute" property.

        Allows clients to read or write the specified attributes, along with their sub-types.

        Attributes that are subtypes of listed attributes are implicitly included. In addition, the list of attributes may include the wild-card '*', which represents all user attributes, or the wild-card '+', which represents all operational attributes, or the name of an object class prefixed with '@' to include all attributes defined by the object class.

        Default value is undefined

        Returns:
        Returns an unmodifiable set containing the values of the "allowed-attribute" property.
      • getAllowedAttributeException

        SortedSet<String> getAllowedAttributeException()
        Gets the "allowed-attribute-exception" property.

        Specifies zero or more attributes which, together with their sub-types, should not be included in the list of allowed attributes.

        This property is typically used when the list of attributes specified by the allowed-attribute property is too broad. It is especially useful when creating policies which grant access to all user attributes (*) except certain sensitive attributes, such as userPassword.

        Default value is undefined

        Returns:
        Returns an unmodifiable set containing the values of the "allowed-attribute-exception" property.
      • getAllowedControl

        SortedSet<String> getAllowedControl()
        Gets the "allowed-control" property.

        Allows clients to use the specified LDAP controls.

        Default value is undefined

        Returns:
        Returns an unmodifiable set containing the values of the "allowed-control" property.
      • getAllowedExtendedOperation

        SortedSet<String> getAllowedExtendedOperation()
        Gets the "allowed-extended-operation" property.

        Allows clients to use the specified LDAP extended operations.

        Default value is undefined

        Returns:
        Returns an unmodifiable set containing the values of the "allowed-extended-operation" property.
      • isAuthenticationRequired

        boolean isAuthenticationRequired()
        Gets the "authentication-required" property.

        Restricts the scope of the policy so that it only applies to authenticated users.

        Default value: false

        Returns:
        Returns the value of the "authentication-required" property.
      • getConnectionClientAddressEqualTo

        SortedSet<AddressMask> getConnectionClientAddressEqualTo()
        Gets the "connection-client-address-equal-to" property.

        Restricts the scope of the policy so that it only applies to connections which match at least one of the specified client host names or address masks.

        Valid values include a host name, a fully qualified domain name, a domain name, an IP address, or a sub-network with sub-network mask.

        Default value is undefined

        Returns:
        Returns an unmodifiable set containing the values of the "connection-client-address-equal-to" property.
      • getConnectionClientAddressNotEqualTo

        SortedSet<AddressMask> getConnectionClientAddressNotEqualTo()
        Gets the "connection-client-address-not-equal-to" property.

        Restricts the scope of the policy so that it only applies to connections which match none of the specified client host names or address masks.

        Valid values include a host name, a fully qualified domain name, a domain name, an IP address, or a sub-network with sub-network mask.

        Default value is undefined

        Returns:
        Returns an unmodifiable set containing the values of the "connection-client-address-not-equal-to" property.
      • getConnectionMinimumSsf

        int getConnectionMinimumSsf()
        Gets the "connection-minimum-ssf" property.

        Restricts the scope of the policy so that it only applies to connections having the specified minimum security strength factor.

        The security strength factor (ssf) pertains to the cipher key strength for connections using DIGEST-MD5, GSSAPI, SSL, or TLS. For example, to require that the connection must have a cipher strength of at least 256 bits, specify a value of 256.

        Default value: 0

        Returns:
        Returns the value of the "connection-minimum-ssf" property.
      • getConnectionPortEqualTo

        SortedSet<Integer> getConnectionPortEqualTo()
        Gets the "connection-port-equal-to" property.

        Restricts the scope of the policy so that it only applies to connections to any of the specified ports, for example 1389.

        Default value is undefined

        Returns:
        Returns an unmodifiable set containing the values of the "connection-port-equal-to" property.
      • getConnectionProtocolEqualTo

        SortedSet<String> getConnectionProtocolEqualTo()
        Gets the "connection-protocol-equal-to" property.

        Restricts the scope of the policy so that it only applies to connections which match any of the specified protocols.

        Default value is undefined

        Returns:
        Returns an unmodifiable set containing the values of the "connection-protocol-equal-to" property.
      • getPermission

        SortedSet<GlobalAccessControlPolicyCfgDefn.Permission> getPermission()
        Gets the "permission" property.

        Specifies the type of access allowed by this policy.

        Returns:
        Returns an unmodifiable set containing the values of the "permission" property.
      • getRequestTargetDnEqualTo

        SortedSet<String> getRequestTargetDnEqualTo()
        Gets the "request-target-dn-equal-to" property.

        Restricts the scope of the policy so that it only applies to requests which target entries matching at least one of the specified DN patterns.

        Valid DN filters are strings composed of zero or more wildcards and RDN components. A double wildcard ** replaces one or more RDN components (as in uid=dmiller,**,dc=example,dc=com). A simple wildcard * replaces either a whole RDN, or a whole type, or a value substring (as in uid=bj*,ou=people,dc=example,dc=com).

        Default value is undefined

        Returns:
        Returns an unmodifiable set containing the values of the "request-target-dn-equal-to" property.
      • isRequestTargetDnEqualToUserDn

        boolean isRequestTargetDnEqualToUserDn()
        Gets the "request-target-dn-equal-to-user-dn" property.

        Restricts the scope of the policy so that it only applies to requests sent by authenticated users where the request's target DN is the same as the DN of the authorized user.

        Default value: false

        Returns:
        Returns the value of the "request-target-dn-equal-to-user-dn" property.
      • getRequestTargetDnNotEqualTo

        SortedSet<String> getRequestTargetDnNotEqualTo()
        Gets the "request-target-dn-not-equal-to" property.

        Restricts the scope of the policy so that it only applies to requests which target entries matching none of the specified DN patterns.

        Valid DN filters are strings composed of zero or more wildcards and RDN components. A double wildcard ** replaces one or more RDN components (as in uid=dmiller,**,dc=example,dc=com). A simple wildcard * replaces either a whole RDN, or a whole type, or a value substring (as in uid=bj*,ou=people,dc=example,dc=com).

        Default value is undefined

        Returns:
        Returns an unmodifiable set containing the values of the "request-target-dn-not-equal-to" property.
      • getUserDnEqualTo

        SortedSet<String> getUserDnEqualTo()
        Gets the "user-dn-equal-to" property.

        Restricts the scope of the policy so that it only applies to authenticated users whose authorization DN matches at least one of the specified DN patterns.

        Valid DN filters are strings composed of zero or more wildcards and RDN components. A double wildcard ** replaces one or more RDN components (as in uid=dmiller,**,dc=example,dc=com). A simple wildcard * replaces either a whole RDN, or a whole type, or a value substring (as in uid=bj*,ou=people,dc=example,dc=com).

        Default value is undefined

        Returns:
        Returns an unmodifiable set containing the values of the "user-dn-equal-to" property.
      • getUserDnNotEqualTo

        SortedSet<String> getUserDnNotEqualTo()
        Gets the "user-dn-not-equal-to" property.

        Restricts the scope of the policy so that it only applies to authenticated users whose authorization DN matches none of the specified DN patterns.

        Valid DN filters are strings composed of zero or more wildcards and RDN components. A double wildcard ** replaces one or more RDN components (as in uid=dmiller,**,dc=example,dc=com). A simple wildcard * replaces either a whole RDN, or a whole type, or a value substring (as in uid=bj*,ou=people,dc=example,dc=com).

        Default value is undefined

        Returns:
        Returns an unmodifiable set containing the values of the "user-dn-not-equal-to" property.