Class: AWSCDK::BedrockAgentCore::OAuth2CredentialProviderFactoryBaseProps

Inherits:
OAuth2CredentialProviderBaseProps
  • Object
show all
Defined in:
bedrock_agent_core/o_auth2_credential_provider_factory_base_props.rb

Overview

Naming, tags, and client credentials shared by every OAuth2CredentialProvider factory.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(o_auth2_credential_provider_name: nil, tags: nil, client_id:, client_secret:) ⇒ OAuth2CredentialProviderFactoryBaseProps

Returns a new instance of OAuth2CredentialProviderFactoryBaseProps.

Parameters:

  • o_auth2_credential_provider_name (String, nil) (defaults to: nil)

    Name of the credential provider.

  • tags (Hash{String => String}, nil) (defaults to: nil)

    Tags for this credential provider.

  • client_id (String)

    OAuth2 client identifier.

  • client_secret (AWSCDK::SecretValue)

    OAuth2 client secret.



12
13
14
15
16
17
18
19
20
21
# File 'bedrock_agent_core/o_auth2_credential_provider_factory_base_props.rb', line 12

def initialize(o_auth2_credential_provider_name: nil, tags: nil, client_id:, client_secret:)
  @o_auth2_credential_provider_name = o_auth2_credential_provider_name
  Jsii::Type.check_type(@o_auth2_credential_provider_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "oAuth2CredentialProviderName") unless @o_auth2_credential_provider_name.nil?
  @tags = tags
  Jsii::Type.check_type(@tags, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6InN0cmluZyJ9LCJraW5kIjoibWFwIn19")), "tags") unless @tags.nil?
  @client_id = client_id
  Jsii::Type.check_type(@client_id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "clientId")
  @client_secret = client_secret
  Jsii::Type.check_type(@client_secret, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5TZWNyZXRWYWx1ZSJ9")), "clientSecret")
end

Instance Attribute Details

#client_idString (readonly)

OAuth2 client identifier.

Returns:

  • (String)


36
37
38
# File 'bedrock_agent_core/o_auth2_credential_provider_factory_base_props.rb', line 36

def client_id
  @client_id
end

#client_secretAWSCDK::SecretValue (readonly)

OAuth2 client secret.

NOTE: The client secret will be included in the CloudFormation template as part of synthesis. The service stores the secret in Secrets Manager after creation, but the value is visible in the template and deployment history. Use SecretValue.unsafePlainText() to explicitly acknowledge plaintext, or pass a reference from another construct to avoid embedding the literal value.

Returns:



46
47
48
# File 'bedrock_agent_core/o_auth2_credential_provider_factory_base_props.rb', line 46

def client_secret
  @client_secret
end

#o_auth2_credential_provider_nameString? (readonly)

Note:

Default: a name generated by CDK

Name of the credential provider.

Returns:

  • (String, nil)


27
28
29
# File 'bedrock_agent_core/o_auth2_credential_provider_factory_base_props.rb', line 27

def o_auth2_credential_provider_name
  @o_auth2_credential_provider_name
end

#tagsHash{String => String}? (readonly)

Note:

Default: - no tags

Tags for this credential provider.

Returns:

  • (Hash{String => String}, nil)


32
33
34
# File 'bedrock_agent_core/o_auth2_credential_provider_factory_base_props.rb', line 32

def tags
  @tags
end

Class Method Details

.jsii_propertiesObject



48
49
50
51
52
53
54
55
# File 'bedrock_agent_core/o_auth2_credential_provider_factory_base_props.rb', line 48

def self.jsii_properties
  {
    :o_auth2_credential_provider_name => "oAuth2CredentialProviderName",
    :tags => "tags",
    :client_id => "clientId",
    :client_secret => "clientSecret",
  }
end

Instance Method Details

#to_jsiiObject



57
58
59
60
61
62
63
64
65
66
67
# File 'bedrock_agent_core/o_auth2_credential_provider_factory_base_props.rb', line 57

def to_jsii
  result = {}
  result.merge!(super)
  result.merge!({
    "oAuth2CredentialProviderName" => @o_auth2_credential_provider_name,
    "tags" => @tags,
    "clientId" => @client_id,
    "clientSecret" => @client_secret,
  })
  result.compact
end