TransitEncryption
- class aws_cdk.aws_mediaconnect_alpha.TransitEncryption(*, secret, role=None)
Bases:
object(experimental) Transit encryption configuration for router integrations — securing the link between a router and a flow or a MediaLive channel/input.
Uses AWS Secrets Manager for key management.
The secret must live in the same AWS account and Region as the consuming resource. MediaConnect does not support cross-account or cross-Region secrets.
Trust-policy scope on routers. Router I/O ids are service-generated (unknown at synth time), and pinning the live ARN would create a CloudFormation dependency cycle — so the auto-created role pins
aws:SourceArnto a wildcarded ARN (arn:...:routerInput:*/arn:...:routerOutput:*) plusaws:SourceAccount. To pin a tighter trust policy, supply your ownrole.- Parameters:
secret (
ISecret) – (experimental) Secrets Manager secret containing the transit encryption key.role (
Optional[IRole]) – (experimental) IAM role that MediaConnect assumes to access the Secrets Manager secret. If provided, the role is used as-is; you must grant it the necessary permissions yourself. Default: - a scoped role is auto-created with read access to the secret and a confused-deputy trust condition. See the Encryption section of the module README for the generated trust policy.
- See:
https://docs.aws.amazon.com/mediaconnect/latest/ug/cross-service-confused-deputy-prevention.html
- Stability:
experimental
- ExampleMetadata:
infused
Example:
from aws_cdk.aws_mediaconnect_alpha import TransitEncryption # stack: Stack # media_live_channel: medialive.IChannel # transit_secret: Secret # must hold the same value as the channel's MediaConnectRouterSettings.shared() secret input = RouterInput(stack, "ChannelInput", router_input_name="channel-input", maximum_bitrate=Bitrate.mbps(20), routing_scope=RoutingScope.REGIONAL, tier=RouterInputTier.INPUT_50, configuration=RouterInputConfiguration.media_live_channel( channel=media_live_channel, output_name="router-ts", pipeline=MediaLivePipeline.PIPELINE_0, source_transit_decryption=TransitEncryption(secret=transit_secret) ) )
Attributes
- role
(experimental) IAM role that MediaConnect assumes to access the Secrets Manager secret.
If provided, the role is used as-is; you must grant it the necessary permissions yourself.
- Default:
a scoped role is auto-created with read access to the secret and a
confused-deputy trust condition. See the Encryption section of the module README for the generated trust policy.
- Stability:
experimental
- secret
(experimental) Secrets Manager secret containing the transit encryption key.
- Stability:
experimental