Class: SDM::SQLServerKerberosAD

Inherits:
Object
  • Object
show all
Defined in:
lib/models/porcelain.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(allow_deprecated_encryption: nil, bind_interface: nil, database: nil, egress_filter: nil, healthy: nil, hostname: nil, id: nil, identity_alias_healthcheck_username: nil, identity_set_id: nil, keytab: nil, krb_config: nil, name: nil, override_database: nil, port: nil, port_override: nil, proxy_cluster_id: nil, realm: nil, schema: nil, secret_store_id: nil, server_spn: nil, subdomain: nil, tags: nil, username: nil) ⇒ SQLServerKerberosAD

Returns a new instance of SQLServerKerberosAD.



16522
16523
16524
16525
16526
16527
16528
16529
16530
16531
16532
16533
16534
16535
16536
16537
16538
16539
16540
16541
16542
16543
16544
16545
16546
16547
16548
16549
16550
16551
16552
16553
16554
16555
16556
16557
16558
16559
16560
16561
16562
16563
16564
16565
16566
16567
16568
16569
16570
# File 'lib/models/porcelain.rb', line 16522

def initialize(
  allow_deprecated_encryption: nil,
  bind_interface: nil,
  database: nil,
  egress_filter: nil,
  healthy: nil,
  hostname: nil,
  id: nil,
  identity_alias_healthcheck_username: nil,
  identity_set_id: nil,
  keytab: nil,
  krb_config: nil,
  name: nil,
  override_database: nil,
  port: nil,
  port_override: nil,
  proxy_cluster_id: nil,
  realm: nil,
  schema: nil,
  secret_store_id: nil,
  server_spn: nil,
  subdomain: nil,
  tags: nil,
  username: nil
)
  @allow_deprecated_encryption = allow_deprecated_encryption == nil ? false : allow_deprecated_encryption
  @bind_interface = bind_interface == nil ? "" : bind_interface
  @database = database == nil ? "" : database
  @egress_filter = egress_filter == nil ? "" : egress_filter
  @healthy = healthy == nil ? false : healthy
  @hostname = hostname == nil ? "" : hostname
  @id = id == nil ? "" : id
  @identity_alias_healthcheck_username = identity_alias_healthcheck_username == nil ? "" : identity_alias_healthcheck_username
  @identity_set_id = identity_set_id == nil ? "" : identity_set_id
  @keytab = keytab == nil ? "" : keytab
  @krb_config = krb_config == nil ? "" : krb_config
  @name = name == nil ? "" : name
  @override_database = override_database == nil ? false : override_database
  @port = port == nil ? 0 : port
  @port_override = port_override == nil ? 0 : port_override
  @proxy_cluster_id = proxy_cluster_id == nil ? "" : proxy_cluster_id
  @realm = realm == nil ? "" : realm
  @schema = schema == nil ? "" : schema
  @secret_store_id = secret_store_id == nil ? "" : secret_store_id
  @server_spn = server_spn == nil ? "" : server_spn
  @subdomain = subdomain == nil ? "" : subdomain
  @tags = tags == nil ? SDM::_porcelain_zero_value_tags() : tags
  @username = username == nil ? "" : username
end

Instance Attribute Details

#allow_deprecated_encryptionObject

Whether to allow deprecated encryption protocols to be used for this resource. For example, TLS 1.0.



16476
16477
16478
# File 'lib/models/porcelain.rb', line 16476

def allow_deprecated_encryption
  @allow_deprecated_encryption
end

#bind_interfaceObject

The bind interface is the IP address to which the port override of a resource is bound (for example, 127.0.0.1). It is automatically generated if not provided and may also be set to one of the ResourceIPAllocationMode constants to select between VNM, loopback, or default allocation.



16478
16479
16480
# File 'lib/models/porcelain.rb', line 16478

def bind_interface
  @bind_interface
end

#databaseObject

The database for healthchecks, and used for clients if Override Default Database is true.



16480
16481
16482
# File 'lib/models/porcelain.rb', line 16480

def database
  @database
end

#egress_filterObject

A filter applied to the routing logic to pin datasource to nodes.



16482
16483
16484
# File 'lib/models/porcelain.rb', line 16482

def egress_filter
  @egress_filter
end

#healthyObject

True if the datasource is reachable and the credentials are valid.



16484
16485
16486
# File 'lib/models/porcelain.rb', line 16484

def healthy
  @healthy
end

#hostnameObject

The host to dial to initiate a connection from the egress node to this resource.



16486
16487
16488
# File 'lib/models/porcelain.rb', line 16486

def hostname
  @hostname
end

#idObject

Unique identifier of the Resource.



16488
16489
16490
# File 'lib/models/porcelain.rb', line 16488

def id
  @id
end

#identity_alias_healthcheck_usernameObject

The username to use for healthchecks, when clients otherwise connect with their own identity alias username.



16490
16491
16492
# File 'lib/models/porcelain.rb', line 16490

def identity_alias_healthcheck_username
  @identity_alias_healthcheck_username
end

#identity_set_idObject

The ID of the identity set to use for identity connections.



16492
16493
16494
# File 'lib/models/porcelain.rb', line 16492

def identity_set_id
  @identity_set_id
end

#keytabObject

The keytab file in base64 format containing an entry with the principal name (username@realm) and key version number with which to authenticate.



16494
16495
16496
# File 'lib/models/porcelain.rb', line 16494

def keytab
  @keytab
end

#krb_configObject

The Kerberos 5 configuration file (krb5.conf) specifying the Active Directory server (KDC) for the configured realm.



16496
16497
16498
# File 'lib/models/porcelain.rb', line 16496

def krb_config
  @krb_config
end

#nameObject

Unique human-readable name of the Resource.



16498
16499
16500
# File 'lib/models/porcelain.rb', line 16498

def name
  @name
end

#override_databaseObject

If set, the database configured cannot be changed by users. This setting is not recommended for most use cases, as some clients will insist their database has changed when it has not, leading to user confusion.



16500
16501
16502
# File 'lib/models/porcelain.rb', line 16500

def override_database
  @override_database
end

#portObject

The port to dial to initiate a connection from the egress node to this resource.



16502
16503
16504
# File 'lib/models/porcelain.rb', line 16502

def port
  @port
end

#port_overrideObject

The local port used by clients to connect to this resource. It is automatically generated if not provided on create and may be re-generated on update by specifying a value of -1.



16504
16505
16506
# File 'lib/models/porcelain.rb', line 16504

def port_override
  @port_override
end

#proxy_cluster_idObject

ID of the proxy cluster for this resource, if any.



16506
16507
16508
# File 'lib/models/porcelain.rb', line 16506

def proxy_cluster_id
  @proxy_cluster_id
end

#realmObject

The Active Directory domain (realm) to which the configured username belongs.



16508
16509
16510
# File 'lib/models/porcelain.rb', line 16508

def realm
  @realm
end

#schemaObject

The Schema to use to direct initial requests.



16510
16511
16512
# File 'lib/models/porcelain.rb', line 16510

def schema
  @schema
end

#secret_store_idObject

ID of the secret store containing credentials for this resource, if any.



16512
16513
16514
# File 'lib/models/porcelain.rb', line 16512

def secret_store_id
  @secret_store_id
end

#server_spnObject

The Service Principal Name of the Microsoft SQL Server instance in Active Directory.



16514
16515
16516
# File 'lib/models/porcelain.rb', line 16514

def server_spn
  @server_spn
end

#subdomainObject

DNS subdomain through which this resource may be accessed on clients. (e.g. "app-prod1" allows the resource to be accessed at "app-prod1.your-org-name.sdm-proxy-domain"). Only applicable to HTTP-based resources or resources using virtual networking mode.



16516
16517
16518
# File 'lib/models/porcelain.rb', line 16516

def subdomain
  @subdomain
end

#tagsObject

Tags is a map of key, value pairs.



16518
16519
16520
# File 'lib/models/porcelain.rb', line 16518

def tags
  @tags
end

#usernameObject

The username to authenticate with.



16520
16521
16522
# File 'lib/models/porcelain.rb', line 16520

def username
  @username
end

Instance Method Details

#to_json(options = {}) ⇒ Object



16572
16573
16574
16575
16576
16577
16578
# File 'lib/models/porcelain.rb', line 16572

def to_json(options = {})
  hash = {}
  self.instance_variables.each do |var|
    hash[var.id2name.delete_prefix("@")] = self.instance_variable_get var
  end
  hash.to_json
end