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.



1387
1388
1389
# File 'lib/google/apis/managedidentities_v1/classes.rb', line 1387

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

Instance Attribute Details

#certificateGoogle::Apis::ManagedidentitiesV1::Certificate

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



1344
1345
1346
# File 'lib/google/apis/managedidentities_v1/classes.rb', line 1344

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)


1349
1350
1351
# File 'lib/google/apis/managedidentities_v1/classes.rb', line 1349

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)


1369
1370
1371
# File 'lib/google/apis/managedidentities_v1/classes.rb', line 1369

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)


1375
1376
1377
# File 'lib/google/apis/managedidentities_v1/classes.rb', line 1375

def name
  @name
end

#stateString

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

Returns:

  • (String)


1380
1381
1382
# File 'lib/google/apis/managedidentities_v1/classes.rb', line 1380

def state
  @state
end

#update_timeString

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

Returns:

  • (String)


1385
1386
1387
# File 'lib/google/apis/managedidentities_v1/classes.rb', line 1385

def update_time
  @update_time
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1392
1393
1394
1395
1396
1397
1398
1399
# File 'lib/google/apis/managedidentities_v1/classes.rb', line 1392

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