Class: ForgeRock::DirectoryServices::ServerBase

Inherits:
Object
  • Object
show all
Includes:
Utils, IdentityPlatform::Utils, MintLogger, MintPress::Mixins::Properties
Defined in:
src/forgerock/lib/forgerock/directory/server-base.rb

Direct Known Subclasses

DirectoryServer, ProxyServer, ReplicationServer

Properties (Read/Write)

  • #installation ⇒ ForgeRock::DirectoryServices::Installation
    OPENDJ installation

    Property Attributes
    
    
    32
    # File 'src/forgerock/lib/forgerock/directory/server-base.rb', line 32
    
    property :installation, type: ForgeRock::DirectoryServices::Installation
  • #java_home ⇒ Pathname (Default Value: Proc.new { self.installation.java_home })
    OPENDJ_JAVA_HOME - automatically derived from the installation if it is provided

    Property Attributes
    • fromString
    • requiredtrue
    • defaultProc.new { self.installation.java_home }
    
    
    35
    # File 'src/forgerock/lib/forgerock/directory/server-base.rb', line 35
    
    property :java_home, type: Pathname, from: String, required: true, default: Proc.new { self.installation.java_home }
  • #opendj_home ⇒ Pathname (Default Value: Proc.new { self.installation.opendj_home })
    OPENDJ_HOME - automatically derived from the installation if it is provided

    Property Attributes
    • fromString
    • requiredtrue
    • defaultProc.new { self.installation.opendj_home }
    
    
    37
    # File 'src/forgerock/lib/forgerock/directory/server-base.rb', line 37
    
    property :opendj_home, type: Pathname, from: String, required: true, default: Proc.new { self.installation.opendj_home }
  • #heap_min ⇒ String (Default Value: '-Xms256m')

    Property Attributes
    • requiredtrue
    • default'-Xms256m'
    
    
    39
    # File 'src/forgerock/lib/forgerock/directory/server-base.rb', line 39
    
    property :heap_min, type: String, required: true, default: '-Xms256m'
  • #heap_max ⇒ String (Default Value: '-Xmx256m')

    Property Attributes
    • requiredtrue
    • default'-Xmx256m'
    
    
    40
    # File 'src/forgerock/lib/forgerock/directory/server-base.rb', line 40
    
    property :heap_max, type: String, required: true, default: '-Xmx256m'
  • #host ⇒ MintPress::Infrastructure::Host (Default Value: Proc.new { r = nil if self.get_property(:installation) and self.installation.host.is_a?(MintPress::Infrastructure::Host) r = self.installation.host end r })

    Property Attributes
    • defaultProc.new { r = nil if self.get_property(:installation) and self.installation.host.is_a?(MintPress::Infrastructure::Host) r = self.installation.host end r }
    • requiredtrue
    • no_backreftrue
    • paralleltrue
    • disposition:requires
    
    
    42
    43
    44
    45
    46
    47
    48
    # File 'src/forgerock/lib/forgerock/directory/server-base.rb', line 42
    
    property :host, type: MintPress::Infrastructure::Host, default: Proc.new { 
      r = nil
      if self.get_property(:installation) and self.installation.host.is_a?(MintPress::Infrastructure::Host)
          r = self.installation.host
      end 
      r 
    }, required: true, no_backref: true, parallel: true, disposition: :requires
  • #admin_connector_port ⇒ Integer (Default Value: 4444)
    Port on which the Administration Connector should listen for communication

    Property Attributes
    • default4444
    • requiredtrue
    
    
    51
    # File 'src/forgerock/lib/forgerock/directory/server-base.rb', line 51
    
    property :adminConnectorPort, type: Integer, default: 4444, required: true
  • #root_user_dn ⇒ String (Default Value: "cn=Directory Manager")
    DN for the initial root user for the Directory Server Default value: cn=Directory Manager

    Property Attributes
    • default"cn=Directory Manager"
    • requiredtrue
    
    
    54
    # File 'src/forgerock/lib/forgerock/directory/server-base.rb', line 54
    
    property :rootUserDn, type: String, default: "cn=Directory Manager", required: true
  • #root_user_password ⇒ Mint::Secret
    Password for the initial root user for the Directory Server

    Property Attributes
    • fromString
    • requiredtrue
    
    
    56
    # File 'src/forgerock/lib/forgerock/directory/server-base.rb', line 56
    
    property :rootUserPassword, type: Mint::Secret, from: String, required: true
  • #hostname ⇒ String (Default Value: Proc.new { r = nil if self.get_property(:installation) and self.get_property(:installation).is_a?(ForgeRock::DirectoryServices::Installation) r = self.installation.host.fqdn end r })
    The fully-qualified directory server host name that will be used when generating self-signed certificates for LDAP SSL/StartTLS, the administration connector, and replication

    Property Attributes
    • defaultProc.new { r = nil if self.get_property(:installation) and self.get_property(:installation).is_a?(ForgeRock::DirectoryServices::Installation) r = self.installation.host.fqdn end r }
    • requiredtrue
    
    
    61
    62
    63
    64
    65
    66
    67
    # File 'src/forgerock/lib/forgerock/directory/server-base.rb', line 61
    
    property :hostname, type: String, default: Proc.new { 
      r = nil
      if self.get_property(:installation) and self.get_property(:installation).is_a?(ForgeRock::DirectoryServices::Installation)
        r = self.installation.host.fqdn
      end 
      r 
    }, required: true
  • #instance_path ⇒ Pathname (Default Value: Proc.new { self.installation.opendj_home })
    Path were the instance should be set up Default value:

    Property Attributes
    • fromString
    • requiredtrue
    • defaultProc.new { self.installation.opendj_home }
    
    
    72
    # File 'src/forgerock/lib/forgerock/directory/server-base.rb', line 72
    
    property :instancePath, type: Pathname, from: String, required: true, default: Proc.new { self.installation.opendj_home }
  • #base_dn ⇒ Array of ⇒ String (Default Value: [])

    Property Attributes
    • default[]
    
    
    74
    # File 'src/forgerock/lib/forgerock/directory/server-base.rb', line 74
    
    property :baseDn, type: String, array: true, default: []
  • #http_port ⇒ Integer
    Port on which the server should listen for HTTP communication

    Property Attributes
    
    
    80
    # File 'src/forgerock/lib/forgerock/directory/server-base.rb', line 80
    
    property :httpPort, type: Integer
  • #https_port ⇒ Integer
    Port on which the server should listen for HTTPS communication

    Property Attributes
    
    
    82
    # File 'src/forgerock/lib/forgerock/directory/server-base.rb', line 82
    
    property :httpsPort, type: Integer
  • #ldap_port ⇒ Integer
    Port on which the Directory Server should listen for LDAP communication

    Property Attributes
    
    
    84
    # File 'src/forgerock/lib/forgerock/directory/server-base.rb', line 84
    
    property :ldapPort, type: Integer
  • #ldaps_port ⇒ Integer
    Port on which the Directory Server should listen for LDAPS communication. The LDAPS port will be configured and SSL will be enabled only if this argument is explicitly specified

    Property Attributes
    
    
    88
    # File 'src/forgerock/lib/forgerock/directory/server-base.rb', line 88
    
    property :ldapsPort, type: Integer
  • #enable_start_tls ⇒ [ TrueClass, FalseClass ] (Default Value: false)
    Enable StartTLS to allow secure communication with the server using the LDAP port

    Property Attributes
    • defaultfalse
    
    
    92
    # File 'src/forgerock/lib/forgerock/directory/server-base.rb', line 92
    
    property :enableStartTls, type: [ TrueClass, FalseClass ], default: false
  • #cert_nickname ⇒ String
    Generic and global props available below here Nickname of a keystore entry containing a certificate that the server should use when negotiating secure connections using StartTLS or SSL. Multiple keystore entries may be provided by using this option multiple times

    Property Attributes
    
    
    99
    # File 'src/forgerock/lib/forgerock/directory/server-base.rb', line 99
    
    property :certNickname, type: String
  • #monitor_user_dn ⇒ String (Default Value: "uid=Monitor")
    DN of the default user allowed to query monitoring information Default value: uid=Monitor

    Property Attributes
    • default"uid=Monitor"
    
    
    102
    # File 'src/forgerock/lib/forgerock/directory/server-base.rb', line 102
    
    property :monitorUserDn, type: String, default: "uid=Monitor"
  • #monitor_user_password ⇒ Mint::Secret
    Password of the default user allowed to query monitoring information

    Property Attributes
    • fromString
    
    
    104
    # File 'src/forgerock/lib/forgerock/directory/server-base.rb', line 104
    
    property :monitorUserPassword, type: Mint::Secret, from: String
  • #do_not_start ⇒ [ TrueClass, FalseClass ] (Default Value: false)
    Do not start the server when the configuration is completed

    Property Attributes
    • defaultfalse
    
    
    106
    # File 'src/forgerock/lib/forgerock/directory/server-base.rb', line 106
    
    property :doNotStart, type: [ TrueClass, FalseClass ], default: false
  • #key_store_password ⇒ Mint::Secret
    Keystore cleartext password

    Property Attributes
    • fromString
    
    
    108
    # File 'src/forgerock/lib/forgerock/directory/server-base.rb', line 108
    
    property :keyStorePassword, type: Mint::Secret, from: String
  • #skip_port_check ⇒ [ TrueClass, FalseClass ] (Default Value: false)
    Skip the check to determine whether the specified ports are usable

    Property Attributes
    • defaultfalse
    
    
    110
    # File 'src/forgerock/lib/forgerock/directory/server-base.rb', line 110
    
    property :skipPortCheck, type: [ TrueClass, FalseClass ], default: false
  • #use_java_key_store ⇒ Pathname
    Path of a JKS keystore containing the certificate(s) that the server should use when negotiating secure connections using StartTLS or SSL

    Property Attributes
    • fromString
    
    
    113
    # File 'src/forgerock/lib/forgerock/directory/server-base.rb', line 113
    
    property :useJavaKeyStore, type: Pathname, from: String
  • #use_jce_key_store ⇒ Pathname
    Path of a JCEKS keystore containing the certificate(s) that the server should use when negotiating secure connections using StartTLS or SSL

    Property Attributes
    • fromString
    
    
    116
    # File 'src/forgerock/lib/forgerock/directory/server-base.rb', line 116
    
    property :useJceKeyStore, type: Pathname, from: String
  • #use_pkcs11_key_store ⇒ Pathname
    Use certificate(s) in a PKCS#11 token that the server should use when accepting SSL-based connections or performing StartTLS negotiation

    Property Attributes
    • fromString
    
    
    119
    # File 'src/forgerock/lib/forgerock/directory/server-base.rb', line 119
    
    property :usePkcs11KeyStore, type: Pathname, from: String
  • #use_pkcs12_key_store ⇒ Pathname
    Path of a PKCS#12 keystore containing the certificate(s) that the server should use when negotiating secure connections using StartTLS or SSL

    Property Attributes
    • fromString
    
    
    122
    # File 'src/forgerock/lib/forgerock/directory/server-base.rb', line 122
    
    property :usePkcs12KeyStore, type: Pathname, from: String
  • #use_java_trust_store ⇒ Pathname
    Use existing JKS truststore file to trust the remote server certificates

    Property Attributes
    • fromString
    
    
    124
    # File 'src/forgerock/lib/forgerock/directory/server-base.rb', line 124
    
    property :useJavaTrustStore, type: Pathname, from: String
  • #use_jce_trust_store ⇒ Pathname
    Use existing JCEKS truststore file to trust the remote server certificates

    Property Attributes
    • fromString
    
    
    126
    # File 'src/forgerock/lib/forgerock/directory/server-base.rb', line 126
    
    property :useJceTrustStore, type: Pathname, from: String
  • #use_jvm_trust_store ⇒ [ TrueClass, FalseClass ] (Default Value: false)
    Use the JVM truststore to trust certificates from other replication servers in the topology Default: false

    Property Attributes
    • defaultfalse
    
    
    129
    # File 'src/forgerock/lib/forgerock/directory/server-base.rb', line 129
    
    property :useJvmTrustStore, type: [ TrueClass, FalseClass ], default: false
  • #use_pkcs12_trust_store ⇒ Pathname
    Use existing PKCS12 truststore file to trust the remote server certificates

    Property Attributes
    • fromString
    
    
    131
    # File 'src/forgerock/lib/forgerock/directory/server-base.rb', line 131
    
    property :usePkcs12TrustStore, type: Pathname, from: String
  • #trust_store_password ⇒ Mint::Secret
    Truststore cleartext password

    Property Attributes
    • fromString
    
    
    133
    # File 'src/forgerock/lib/forgerock/directory/server-base.rb', line 133
    
    property :trustStorePassword, type: Mint::Secret, from: String
  • #trust_store_password_file ⇒ Pathname
    Path to a file containing the truststore password

    Property Attributes
    • fromString
    
    
    135
    # File 'src/forgerock/lib/forgerock/directory/server-base.rb', line 135
    
    property :trustStorePasswordFile, type: Pathname, from: String
  • #trust_all ⇒ [ TrueClass, FalseClass ] (Default Value: false)
    Trust all server SSL certificates

    Property Attributes
    • defaultfalse
    
    
    137
    # File 'src/forgerock/lib/forgerock/directory/server-base.rb', line 137
    
    property :trustAll, type: [ TrueClass, FalseClass ], default: false
  • #production_mode ⇒ [ TrueClass, FalseClass ] (Default Value: false)
    Harden default configuration for production use.

    Property Attributes
    • defaultfalse
    
    
    143
    # File 'src/forgerock/lib/forgerock/directory/server-base.rb', line 143
    
    property :productionMode, type: [ TrueClass, FalseClass ], default: false
  • #java_properties ⇒ Hash of (Default Value: {})
    Java Properties here are key value pairs and will be defined in java.properties in the #{instance_path}/config/java.properties location

    Property Attributes
    • default{}
    
    
    146
    # File 'src/forgerock/lib/forgerock/directory/server-base.rb', line 146
    
    property :java_properties, hash: true, default: {}
  • #tool_properties ⇒ Hash of (Default Value: {})
    Tool Properties here are key value pairs and will be defined in tools.properties in the #{instance_path}/config/tools.properties location

    Property Attributes
    • default{}
    
    
    149
    # File 'src/forgerock/lib/forgerock/directory/server-base.rb', line 149
    
    property :tool_properties, hash: true, default: {}

Properties (Read Only)

Constant Summary

Constants included from MintLogger

MintLogger::DEBUG, MintLogger::ERROR, MintLogger::FATAL, MintLogger::INFO, MintLogger::UNKNOWN, MintLogger::VERBOSE, MintLogger::WARN

Instance Attribute Summary

Attributes included from MintPress::Mixins::Properties

#autopush_set_cache, #dynamic_create, #harvest_on_access, #harvest_undefined_only, #harvested, #tree_root

Instance Method Summary collapse

Methods included from Utils

#addrate, #backup, #dsconfig, #dsreplication, #encode_password, #export_ldif, #import_ldif, #ldapcompare, #ldapdelete, #ldapmodify, #ldappasswordmodify, #ldapsearch, #ldifmodify, #ldifsearch, #manage_account, #manage_tasks, #start_ds, #stop_ds, #transport

Methods included from MintPress::Mixins::Properties

#[], #[]=, #add_validate_report_result, #armour_set_property, #array_contains?, #array_is_a?, #check_autopush, #check_stack_overflow, #clone_property_object, #cloner_handle_single_property, #coerce_single, #contains_as_string?, #display_validate_report_result, #double_initialize?, #dump_to_hash, #find_parent, #find_parent_by_identity, #generate_accessor_functions, #get_canonical_renamed, #get_from_opts, #get_my_name, #get_property, #get_property_item, #has?, included, #initialize_validate_report, #inspect, #is_cloned_object?, #is_mintpress_object?, #is_probably_canonical?, #is_set?, #local_debug, #local_info, #local_verbose, #mintpress_property_definitions, #place_object_by_identity, #process_properties, #prop_set?, #property, #property_definitions, #property_details, #property_is_simple_object?, #push_root!, #require_property, #require_update, #retrieve_docstring, #sanitize, #set_map_dirty, #set_property, #set_property_item, #show_short_array, #strip_defaults!, #synchronize, #uncloned_property_definitions, #update_map, #validate, #validate_generic, #validate_properties, #validate_property, #validate_required, #version_allowed?, #weakref

Methods included from MintLogger::Utils::Common

#boolean_val, #has_value?, #no_value?, #nvl, #path_as_symbol, #ruby_level_to_send

Constructor Details

#initialize(opts = {}) ⇒ ServerBase

Returns a new instance of ServerBase.

Instance Method Details

#clobbervoid

This method returns an undefined value.

Clobber the ForgeRock Directory Services instance

#exist?Boolean

Alias for exists?

Returns:

  • (Boolean)

#exists?Boolean

Does the Directory Server instance exist

Returns:

  • (Boolean)

#harvestObject

#running?TrueClass, FalseClass

Is the server running?

Returns:

  • (TrueClass, FalseClass)

#startvoid

This method returns an undefined value.

Start the instance if it is not running

#statusObject

Return server instance status

Returns:

  • String Status of the Server Instance

#stopvoid

This method returns an undefined value.

Stop the instance if it is running

#to_hashHash

Return a Hash representation for the Installation and all its sub-classes.

Returns:

  • (Hash)
    the object in Hash format