Class: AWSCDK::MediaPackagev2::CfnOriginEndpoint::SpekeKeyProviderProperty
- Inherits:
-
Jsii::Struct
- Object
- Jsii::Struct
- AWSCDK::MediaPackagev2::CfnOriginEndpoint::SpekeKeyProviderProperty
- Defined in:
- media_packagev2/cfn_origin_endpoint.rb
Overview
The parameters for the SPEKE key provider.
Instance Attribute Summary collapse
-
#certificate_arn ⇒ String?
readonly
The ARN for the certificate that you imported to Amazon Web Services Certificate Manager to add content key encryption to this endpoint.
-
#drm_systems ⇒ Array<String>
readonly
The DRM solution provider you're using to protect your content during distribution.
-
#encryption_contract_configuration ⇒ AWSCDK::IResolvable, AWSCDK::MediaPackagev2::CfnOriginEndpoint::EncryptionContractConfigurationProperty
readonly
The encryption contract configuration associated with the SPEKE key provider.
-
#resource_id ⇒ String
readonly
The unique identifier for the content.
-
#role_arn ⇒ String
readonly
The ARN for the IAM role granted by the key provider that provides access to the key provider API.
-
#url ⇒ String
readonly
The URL of the SPEKE key provider.
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(drm_systems:, encryption_contract_configuration:, resource_id:, role_arn:, url:, certificate_arn: nil) ⇒ SpekeKeyProviderProperty
constructor
A new instance of SpekeKeyProviderProperty.
- #to_jsii ⇒ Object
Constructor Details
#initialize(drm_systems:, encryption_contract_configuration:, resource_id:, role_arn:, url:, certificate_arn: nil) ⇒ SpekeKeyProviderProperty
Returns a new instance of SpekeKeyProviderProperty.
2310 2311 2312 2313 2314 2315 2316 2317 2318 2319 2320 2321 2322 2323 |
# File 'media_packagev2/cfn_origin_endpoint.rb', line 2310 def initialize(drm_systems:, encryption_contract_configuration:, resource_id:, role_arn:, url:, certificate_arn: nil) @drm_systems = drm_systems Jsii::Type.check_type(@drm_systems, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6InN0cmluZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "drmSystems") @encryption_contract_configuration = encryption_contract_configuration.is_a?(Hash) ? ::AWSCDK::MediaPackagev2::CfnOriginEndpoint::EncryptionContractConfigurationProperty.new(**encryption_contract_configuration.transform_keys(&:to_sym)) : encryption_contract_configuration Jsii::Type.check_type(@encryption_contract_configuration, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19tZWRpYXBhY2thZ2V2Mi5DZm5PcmlnaW5FbmRwb2ludC5FbmNyeXB0aW9uQ29udHJhY3RDb25maWd1cmF0aW9uUHJvcGVydHkifV19fQ==")), "encryptionContractConfiguration") @resource_id = resource_id Jsii::Type.check_type(@resource_id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "resourceId") @role_arn = role_arn Jsii::Type.check_type(@role_arn, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "roleArn") @url = url Jsii::Type.check_type(@url, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "url") @certificate_arn = certificate_arn Jsii::Type.check_type(@certificate_arn, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "certificateArn") unless @certificate_arn.nil? end |
Instance Attribute Details
#certificate_arn ⇒ String? (readonly)
The ARN for the certificate that you imported to Amazon Web Services Certificate Manager to add content key encryption to this endpoint. For this feature to work, your DRM key provider must support content key encryption.
2364 2365 2366 |
# File 'media_packagev2/cfn_origin_endpoint.rb', line 2364 def certificate_arn @certificate_arn end |
#drm_systems ⇒ Array<String> (readonly)
The DRM solution provider you're using to protect your content during distribution.
2329 2330 2331 |
# File 'media_packagev2/cfn_origin_endpoint.rb', line 2329 def drm_systems @drm_systems end |
#encryption_contract_configuration ⇒ AWSCDK::IResolvable, AWSCDK::MediaPackagev2::CfnOriginEndpoint::EncryptionContractConfigurationProperty (readonly)
The encryption contract configuration associated with the SPEKE key provider.
2334 2335 2336 |
# File 'media_packagev2/cfn_origin_endpoint.rb', line 2334 def encryption_contract_configuration @encryption_contract_configuration end |
#resource_id ⇒ String (readonly)
The unique identifier for the content.
The service sends this identifier to the key server to identify the current endpoint. How unique you make this identifier depends on how fine-grained you want access controls to be. The service does not permit you to use the same ID for two simultaneous encryption processes. The resource ID is also known as the content ID.
The following example shows a resource ID: MovieNight20171126093045
2343 2344 2345 |
# File 'media_packagev2/cfn_origin_endpoint.rb', line 2343 def resource_id @resource_id end |
#role_arn ⇒ String (readonly)
The ARN for the IAM role granted by the key provider that provides access to the key provider API.
This role must have a trust policy that allows MediaPackage to assume the role, and it must have a sufficient permissions policy to allow access to the specific key retrieval URL. Get this from your DRM solution provider.
Valid format: arn:aws:iam::{accountID}:role/{name} . The following example shows a role ARN: arn:aws:iam::444455556666:role/SpekeAccess
2352 2353 2354 |
# File 'media_packagev2/cfn_origin_endpoint.rb', line 2352 def role_arn @role_arn end |
#url ⇒ String (readonly)
The URL of the SPEKE key provider.
2357 2358 2359 |
# File 'media_packagev2/cfn_origin_endpoint.rb', line 2357 def url @url end |
Class Method Details
.jsii_properties ⇒ Object
2366 2367 2368 2369 2370 2371 2372 2373 2374 2375 |
# File 'media_packagev2/cfn_origin_endpoint.rb', line 2366 def self.jsii_properties { :drm_systems => "drmSystems", :encryption_contract_configuration => "encryptionContractConfiguration", :resource_id => "resourceId", :role_arn => "roleArn", :url => "url", :certificate_arn => "certificateArn", } end |
Instance Method Details
#to_jsii ⇒ Object
2377 2378 2379 2380 2381 2382 2383 2384 2385 2386 2387 2388 |
# File 'media_packagev2/cfn_origin_endpoint.rb', line 2377 def to_jsii result = {} result.merge!({ "drmSystems" => @drm_systems, "encryptionContractConfiguration" => @encryption_contract_configuration, "resourceId" => @resource_id, "roleArn" => @role_arn, "url" => @url, "certificateArn" => @certificate_arn, }) result.compact end |