Class: Google::Apis::ManagedidentitiesV1::LdapsSettings

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/managedidentities_v1/classes.rb,
lib/google/apis/managedidentities_v1/representations.rb,
lib/google/apis/managedidentities_v1/representations.rb

Overview

LDAPSSettings represents the ldaps settings for domain resource. LDAP is the Lightweight Directory Access Protocol, defined in https://tools.ietf.org/html/ rfc4511. The settings object configures LDAP over SSL/TLS, whether it is over port 636 or the StartTLS operation. If LDAPSSettings is being changed, it will be placed into the UPDATING state, which indicates that the resource is being reconciled. At this point, Get will reflect an intermediate state.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ LdapsSettings

Returns a new instance of LdapsSettings.



1153
1154
1155
# File 'lib/google/apis/managedidentities_v1/classes.rb', line 1153

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#certificateGoogle::Apis::ManagedidentitiesV1::Certificate

Certificate used to configure LDAPS. Corresponds to the JSON property certificate



1110
1111
1112
# File 'lib/google/apis/managedidentities_v1/classes.rb', line 1110

def certificate
  @certificate
end

#certificate_passwordString

Input only. The password used to encrypt the uploaded PFX certificate. Corresponds to the JSON property certificatePassword

Returns:

  • (String)


1115
1116
1117
# File 'lib/google/apis/managedidentities_v1/classes.rb', line 1115

def certificate_password
  @certificate_password
end

#certificate_pfxString

Input only. The uploaded PKCS12-formatted certificate to configure LDAPS with. It will enable the domain controllers in this domain to accept LDAPS connections (either LDAP over SSL/TLS or the StartTLS operation). A valid certificate chain must form a valid x.509 certificate chain (or be comprised of a single self-signed certificate. It must be encrypted with either: 1) PBES2 + PBKDF2 + AES256 encryption and SHA256 PRF; or 2) pbeWithSHA1And3- KeyTripleDES-CBC Private key must be included for the leaf / single self- signed certificate. Note: For a fqdn your-example-domain.com, the wildcard fqdn is *.your-example-domain.com. Specifically the leaf certificate must have:

  • Either a blank subject or a subject with CN matching the wildcard fqdn. - Exactly two SANs - the fqdn and wildcard fqdn. - Encipherment and digital key signature key usages. - Server authentication extended key usage (OID=1.3.6.1. 5.5.7.3.1) - Private key must be in one of the following formats: RSA, ECDSA, ED25519. - Private key must have appropriate key length: 2048 for RSA, 256 for ECDSA - Signature algorithm of the leaf certificate cannot be MD2, MD5 or SHA1. Corresponds to the JSON property certificatePfx NOTE: Values are automatically base64 encoded/decoded in the client library.

Returns:

  • (String)


1135
1136
1137
# File 'lib/google/apis/managedidentities_v1/classes.rb', line 1135

def certificate_pfx
  @certificate_pfx
end

#nameString

The resource name of the LDAPS settings. Uses the form: projects/project/ locations/location/domains/domain`. Corresponds to the JSON propertyname`

Returns:

  • (String)


1141
1142
1143
# File 'lib/google/apis/managedidentities_v1/classes.rb', line 1141

def name
  @name
end

#stateString

Output only. The current state of this LDAPS settings. Corresponds to the JSON property state

Returns:

  • (String)


1146
1147
1148
# File 'lib/google/apis/managedidentities_v1/classes.rb', line 1146

def state
  @state
end

#update_timeString

Output only. Last update time. Corresponds to the JSON property updateTime

Returns:

  • (String)


1151
1152
1153
# File 'lib/google/apis/managedidentities_v1/classes.rb', line 1151

def update_time
  @update_time
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1158
1159
1160
1161
1162
1163
1164
1165
# File 'lib/google/apis/managedidentities_v1/classes.rb', line 1158

def update!(**args)
  @certificate = args[:certificate] if args.key?(:certificate)
  @certificate_password = args[:certificate_password] if args.key?(:certificate_password)
  @certificate_pfx = args[:certificate_pfx] if args.key?(:certificate_pfx)
  @name = args[:name] if args.key?(:name)
  @state = args[:state] if args.key?(:state)
  @update_time = args[:update_time] if args.key?(:update_time)
end