# Secure Source Manager V1 API - Class Google::Cloud::SecureSourceManager::V1::Instance (v2.7.0)

2.7.0 (latest) 2.6.1 2.5.0 2.4.0 2.3.0 2.2.1 2.1.0 2.0.1 1.3.0 1.2.0 1.1.0 1.0.1 0.4.0 0.3.0 0.2.2 0.1.0 Reference documentation and code samples for the Secure Source Manager V1 API class Google::Cloud::SecureSourceManager::V1::Instance.

A resource that represents a Secure Source Manager instance.

## Inherits

- Object

## Extended By

- Google::Protobuf::MessageExts::ClassMethods

## Includes

- Google::Protobuf::MessageExts

## Methods

### #create_time

    def create_time() -> ::Google::Protobuf::Timestamp

**Returns**

- ([::Google::Protobuf::Timestamp](https://docs.cloud.google.com/ruby/docs/reference/google-cloud-secure_source_manager-v1/latest/Google-Protobuf-Timestamp)) --- Output only. Create timestamp.

### #host_config

    def host_config() -> ::Google::Cloud::SecureSourceManager::V1::Instance::HostConfig

**Returns**

- ([::Google::Cloud::SecureSourceManager::V1::Instance::HostConfig](https://docs.cloud.google.com/ruby/docs/reference/google-cloud-secure_source_manager-v1/latest/Google-Cloud-SecureSourceManager-V1-Instance-HostConfig)) --- Output only. A list of hostnames for this instance.

### #kms_key

    def kms_key() -> ::String

**Returns**

- (::String) --- Optional. Immutable. Customer-managed encryption key name, in the format projects/*/locations/* /keyRings/*/cryptoKeys/*.

### #kms_key=

    def kms_key=(value) -> ::String

**Parameter**

- **value** (::String) --- Optional. Immutable. Customer-managed encryption key name, in the format projects/*/locations/* /keyRings/*/cryptoKeys/*.
**Returns**

- (::String) --- Optional. Immutable. Customer-managed encryption key name, in the format projects/*/locations/* /keyRings/*/cryptoKeys/*.

### #labels

    def labels() -> ::Google::Protobuf::Map{::String => ::String}

**Returns**

- (::Google::Protobuf::Map{::String =\> ::String}) --- Optional. Labels as key value pairs. Keys and values can contain only lowercase letters, numeric characters, underscores, and dashes. For more information, see [Requirements for
  labels](https://cloud.google.com/resource-manager/docs/best-practices-labels#label_encoding).

### #labels=

    def labels=(value) -> ::Google::Protobuf::Map{::String => ::String}

**Parameter**

- **value** (::Google::Protobuf::Map{::String =\> ::String}) --- Optional. Labels as key value pairs. Keys and values can contain only lowercase letters, numeric characters, underscores, and dashes. For more information, see [Requirements for
  labels](https://cloud.google.com/resource-manager/docs/best-practices-labels#label_encoding).
**Returns**

- (::Google::Protobuf::Map{::String =\> ::String}) --- Optional. Labels as key value pairs. Keys and values can contain only lowercase letters, numeric characters, underscores, and dashes. For more information, see [Requirements for
  labels](https://cloud.google.com/resource-manager/docs/best-practices-labels#label_encoding).

### #name

    def name() -> ::String

**Returns**

- (::String) --- Identifier. A unique identifier for an instance. The name should be of the format: `projects/{project_number}/locations/{location_id}/instances/{instance_id}`


  `project_number`: Maps to a unique int64 id assigned to each project.

  `location_id`: Refers to the region where the instance will be deployed.
  Since Secure Source Manager is a regional service, it must be one of the
  valid GCP regions.

  `instance_id`: User provided name for the instance, must be unique for a
  project_number and location_id combination.

### #name=

    def name=(value) -> ::String

**Parameter**

- **value** (::String) --- Identifier. A unique identifier for an instance. The name should be of the format: `projects/{project_number}/locations/{location_id}/instances/{instance_id}`


  `project_number`: Maps to a unique int64 id assigned to each project.

  `location_id`: Refers to the region where the instance will be deployed.
  Since Secure Source Manager is a regional service, it must be one of the
  valid GCP regions.

  `instance_id`: User provided name for the instance, must be unique for a
  project_number and location_id combination.
**Returns**

- (::String) --- Identifier. A unique identifier for an instance. The name should be of the format: `projects/{project_number}/locations/{location_id}/instances/{instance_id}`


  `project_number`: Maps to a unique int64 id assigned to each project.

  `location_id`: Refers to the region where the instance will be deployed.
  Since Secure Source Manager is a regional service, it must be one of the
  valid GCP regions.

  `instance_id`: User provided name for the instance, must be unique for a
  project_number and location_id combination.

### #private_config

    def private_config() -> ::Google::Cloud::SecureSourceManager::V1::Instance::PrivateConfig

**Returns**

- ([::Google::Cloud::SecureSourceManager::V1::Instance::PrivateConfig](https://docs.cloud.google.com/ruby/docs/reference/google-cloud-secure_source_manager-v1/latest/Google-Cloud-SecureSourceManager-V1-Instance-PrivateConfig)) --- Optional. Private settings for private instance.

### #private_config=

    def private_config=(value) -> ::Google::Cloud::SecureSourceManager::V1::Instance::PrivateConfig

**Parameter**

- **value** ([::Google::Cloud::SecureSourceManager::V1::Instance::PrivateConfig](https://docs.cloud.google.com/ruby/docs/reference/google-cloud-secure_source_manager-v1/latest/Google-Cloud-SecureSourceManager-V1-Instance-PrivateConfig)) --- Optional. Private settings for private instance.
**Returns**

- ([::Google::Cloud::SecureSourceManager::V1::Instance::PrivateConfig](https://docs.cloud.google.com/ruby/docs/reference/google-cloud-secure_source_manager-v1/latest/Google-Cloud-SecureSourceManager-V1-Instance-PrivateConfig)) --- Optional. Private settings for private instance.

### #state

    def state() -> ::Google::Cloud::SecureSourceManager::V1::Instance::State

**Returns**

- ([::Google::Cloud::SecureSourceManager::V1::Instance::State](https://docs.cloud.google.com/ruby/docs/reference/google-cloud-secure_source_manager-v1/latest/Google-Cloud-SecureSourceManager-V1-Instance-State)) --- Output only. Current state of the instance.

### #state_note

    def state_note() -> ::Google::Cloud::SecureSourceManager::V1::Instance::StateNote

**Returns**

- ([::Google::Cloud::SecureSourceManager::V1::Instance::StateNote](https://docs.cloud.google.com/ruby/docs/reference/google-cloud-secure_source_manager-v1/latest/Google-Cloud-SecureSourceManager-V1-Instance-StateNote)) --- Output only. An optional field providing information about the current instance state.

### #update_time

    def update_time() -> ::Google::Protobuf::Timestamp

**Returns**

- ([::Google::Protobuf::Timestamp](https://docs.cloud.google.com/ruby/docs/reference/google-cloud-secure_source_manager-v1/latest/Google-Protobuf-Timestamp)) --- Output only. Update timestamp.

### #workforce_identity_federation_config

    def workforce_identity_federation_config() -> ::Google::Cloud::SecureSourceManager::V1::Instance::WorkforceIdentityFederationConfig

**Returns**

- ([::Google::Cloud::SecureSourceManager::V1::Instance::WorkforceIdentityFederationConfig](https://docs.cloud.google.com/ruby/docs/reference/google-cloud-secure_source_manager-v1/latest/Google-Cloud-SecureSourceManager-V1-Instance-WorkforceIdentityFederationConfig)) --- Optional. Configuration for Workforce Identity Federation to support third party identity provider. If unset, defaults to the Google OIDC IdP.

### #workforce_identity_federation_config=

    def workforce_identity_federation_config=(value) -> ::Google::Cloud::SecureSourceManager::V1::Instance::WorkforceIdentityFederationConfig

**Parameter**

- **value** ([::Google::Cloud::SecureSourceManager::V1::Instance::WorkforceIdentityFederationConfig](https://docs.cloud.google.com/ruby/docs/reference/google-cloud-secure_source_manager-v1/latest/Google-Cloud-SecureSourceManager-V1-Instance-WorkforceIdentityFederationConfig)) --- Optional. Configuration for Workforce Identity Federation to support third party identity provider. If unset, defaults to the Google OIDC IdP.
**Returns**

- ([::Google::Cloud::SecureSourceManager::V1::Instance::WorkforceIdentityFederationConfig](https://docs.cloud.google.com/ruby/docs/reference/google-cloud-secure_source_manager-v1/latest/Google-Cloud-SecureSourceManager-V1-Instance-WorkforceIdentityFederationConfig)) --- Optional. Configuration for Workforce Identity Federation to support third party identity provider. If unset, defaults to the Google OIDC IdP.