Class: AWSCDK::MediaConnect::CfnFlowSource::EncryptionProperty

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
media_connect/cfn_flow_source.rb

Overview

Encryption information.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(role_arn:, algorithm: nil, constant_initialization_vector: nil, device_id: nil, key_type: nil, region: nil, resource_id: nil, secret_arn: nil, url: nil) ⇒ EncryptionProperty

Returns a new instance of EncryptionProperty.

Parameters:

  • role_arn (String)

    The ARN of the role that you created during setup (when you set up MediaConnect as a trusted entity).

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

    The type of algorithm that is used for static key encryption (such as aes128, aes192, or aes256).

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

    A 128-bit, 16-byte hex value represented by a 32-character string, to be used with the key for encrypting content.

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

    The value of one of the devices that you configured with your digital rights management (DRM) platform key provider.

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

    The type of key that is used for the encryption.

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

    The AWS Region that the API Gateway proxy endpoint was created in.

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

    An identifier for the content.

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

    The ARN of the secret that you created in AWS Secrets Manager to store the encryption key.

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

    The URL from the API Gateway proxy that you set up to talk to your key server.



777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
# File 'media_connect/cfn_flow_source.rb', line 777

def initialize(role_arn:, algorithm: nil, constant_initialization_vector: nil, device_id: nil, key_type: nil, region: nil, resource_id: nil, secret_arn: nil, url: nil)
  @role_arn = role_arn
  Jsii::Type.check_type(@role_arn, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "roleArn")
  @algorithm = algorithm
  Jsii::Type.check_type(@algorithm, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "algorithm") unless @algorithm.nil?
  @constant_initialization_vector = constant_initialization_vector
  Jsii::Type.check_type(@constant_initialization_vector, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "constantInitializationVector") unless @constant_initialization_vector.nil?
  @device_id = device_id
  Jsii::Type.check_type(@device_id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "deviceId") unless @device_id.nil?
  @key_type = key_type
  Jsii::Type.check_type(@key_type, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "keyType") unless @key_type.nil?
  @region = region
  Jsii::Type.check_type(@region, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "region") unless @region.nil?
  @resource_id = resource_id
  Jsii::Type.check_type(@resource_id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "resourceId") unless @resource_id.nil?
  @secret_arn = secret_arn
  Jsii::Type.check_type(@secret_arn, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "secretArn") unless @secret_arn.nil?
  @url = url
  Jsii::Type.check_type(@url, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "url") unless @url.nil?
end

Instance Attribute Details

#algorithmString? (readonly)

The type of algorithm that is used for static key encryption (such as aes128, aes192, or aes256).

If you are using SPEKE or SRT-password encryption, this property must be left blank.



809
810
811
# File 'media_connect/cfn_flow_source.rb', line 809

def algorithm
  @algorithm
end

#constant_initialization_vectorString? (readonly)

A 128-bit, 16-byte hex value represented by a 32-character string, to be used with the key for encrypting content.

This parameter is not valid for static key encryption.



816
817
818
# File 'media_connect/cfn_flow_source.rb', line 816

def constant_initialization_vector
  @constant_initialization_vector
end

#device_idString? (readonly)

The value of one of the devices that you configured with your digital rights management (DRM) platform key provider.

This parameter is required for SPEKE encryption and is not valid for static key encryption.



823
824
825
# File 'media_connect/cfn_flow_source.rb', line 823

def device_id
  @device_id
end

#key_typeString? (readonly)

Note:

Default: - "static-key"

The type of key that is used for the encryption.

If you don't specify a key_type value, the service uses the default setting ( static-key ). Valid key types are: static-key , speke , and srt-password .



831
832
833
# File 'media_connect/cfn_flow_source.rb', line 831

def key_type
  @key_type
end

#regionString? (readonly)

The AWS Region that the API Gateway proxy endpoint was created in.

This parameter is required for SPEKE encryption and is not valid for static key encryption.



838
839
840
# File 'media_connect/cfn_flow_source.rb', line 838

def region
  @region
end

#resource_idString? (readonly)

An identifier for the content.

The service sends this value to the key server to identify the current endpoint. The resource ID is also known as the content ID. This parameter is required for SPEKE encryption and is not valid for static key encryption.



845
846
847
# File 'media_connect/cfn_flow_source.rb', line 845

def resource_id
  @resource_id
end

#role_arnString (readonly)

The ARN of the role that you created during setup (when you set up MediaConnect as a trusted entity).



802
803
804
# File 'media_connect/cfn_flow_source.rb', line 802

def role_arn
  @role_arn
end

#secret_arnString? (readonly)

The ARN of the secret that you created in AWS Secrets Manager to store the encryption key.

This parameter is required for static key encryption and is not valid for SPEKE encryption.



852
853
854
# File 'media_connect/cfn_flow_source.rb', line 852

def secret_arn
  @secret_arn
end

#urlString? (readonly)

The URL from the API Gateway proxy that you set up to talk to your key server.

This parameter is required for SPEKE encryption and is not valid for static key encryption.



859
860
861
# File 'media_connect/cfn_flow_source.rb', line 859

def url
  @url
end

Class Method Details

.jsii_propertiesObject



861
862
863
864
865
866
867
868
869
870
871
872
873
# File 'media_connect/cfn_flow_source.rb', line 861

def self.jsii_properties
  {
    :role_arn => "roleArn",
    :algorithm => "algorithm",
    :constant_initialization_vector => "constantInitializationVector",
    :device_id => "deviceId",
    :key_type => "keyType",
    :region => "region",
    :resource_id => "resourceId",
    :secret_arn => "secretArn",
    :url => "url",
  }
end

Instance Method Details

#to_jsiiObject



875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
# File 'media_connect/cfn_flow_source.rb', line 875

def to_jsii
  result = {}
  result.merge!({
    "roleArn" => @role_arn,
    "algorithm" => @algorithm,
    "constantInitializationVector" => @constant_initialization_vector,
    "deviceId" => @device_id,
    "keyType" => @key_type,
    "region" => @region,
    "resourceId" => @resource_id,
    "secretArn" => @secret_arn,
    "url" => @url,
  })
  result.compact
end