Class: AWSCDK::BedrockAgentCore::MicrosoftOAuth2CredentialProviderProps

Inherits:
OAuth2CredentialProviderFactoryBaseProps
  • Object
show all
Defined in:
bedrock_agent_core/microsoft_o_auth2_credential_provider_props.rb

Overview

Props for OAuth2CredentialProvider.usingMicrosoft.

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:, tenant_id: nil) ⇒ MicrosoftOAuth2CredentialProviderProps

Returns a new instance of MicrosoftOAuth2CredentialProviderProps.

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.

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

    Microsoft Entra ID tenant ID.



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

def initialize(o_auth2_credential_provider_name: nil, tags: nil, client_id:, client_secret:, tenant_id: nil)
  @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")
  @tenant_id = tenant_id
  Jsii::Type.check_type(@tenant_id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "tenantId") unless @tenant_id.nil?
end

Instance Attribute Details

#client_idString (readonly)

OAuth2 client identifier.

Returns:

  • (String)


38
39
40
# File 'bedrock_agent_core/microsoft_o_auth2_credential_provider_props.rb', line 38

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:



48
49
50
# File 'bedrock_agent_core/microsoft_o_auth2_credential_provider_props.rb', line 48

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)


29
30
31
# File 'bedrock_agent_core/microsoft_o_auth2_credential_provider_props.rb', line 29

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)


34
35
36
# File 'bedrock_agent_core/microsoft_o_auth2_credential_provider_props.rb', line 34

def tags
  @tags
end

#tenant_idString? (readonly)

Note:

Default: - service default tenant resolution

Microsoft Entra ID tenant ID.

Returns:

  • (String, nil)


53
54
55
# File 'bedrock_agent_core/microsoft_o_auth2_credential_provider_props.rb', line 53

def tenant_id
  @tenant_id
end

Class Method Details

.jsii_propertiesObject



55
56
57
58
59
60
61
62
63
# File 'bedrock_agent_core/microsoft_o_auth2_credential_provider_props.rb', line 55

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

Instance Method Details

#to_jsiiObject



65
66
67
68
69
70
71
72
73
74
75
76
# File 'bedrock_agent_core/microsoft_o_auth2_credential_provider_props.rb', line 65

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