Interface SpekeKeyProvider.Builder

  • Method Details

    • encryptionContractConfiguration

      SpekeKeyProvider.Builder encryptionContractConfiguration(EncryptionContractConfiguration encryptionContractConfiguration)

      Configure one or more content encryption keys for your endpoints that use SPEKE Version 2.0. The encryption contract defines which content keys are used to encrypt the audio and video tracks in your stream. To configure the encryption contract, specify which audio and video encryption presets to use.

      Parameters:
      encryptionContractConfiguration - Configure one or more content encryption keys for your endpoints that use SPEKE Version 2.0. The encryption contract defines which content keys are used to encrypt the audio and video tracks in your stream. To configure the encryption contract, specify which audio and video encryption presets to use.
      Returns:
      Returns a reference to this object so that method calls can be chained together.
    • encryptionContractConfiguration

      default SpekeKeyProvider.Builder encryptionContractConfiguration(Consumer<EncryptionContractConfiguration.Builder> encryptionContractConfiguration)

      Configure one or more content encryption keys for your endpoints that use SPEKE Version 2.0. The encryption contract defines which content keys are used to encrypt the audio and video tracks in your stream. To configure the encryption contract, specify which audio and video encryption presets to use.

      This is a convenience method that creates an instance of the EncryptionContractConfiguration.Builder avoiding the need to create one manually via EncryptionContractConfiguration.builder().

      When the Consumer completes, SdkBuilder.build() is called immediately and its result is passed to encryptionContractConfiguration(EncryptionContractConfiguration).

      Parameters:
      encryptionContractConfiguration - a consumer that will call methods on EncryptionContractConfiguration.Builder
      Returns:
      Returns a reference to this object so that method calls can be chained together.
      See Also:
    • resourceId

      SpekeKeyProvider.Builder resourceId(String resourceId)

      The unique identifier for the content. The service sends this to the key server to identify the current endpoint. How unique you make this 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

      Parameters:
      resourceId - The unique identifier for the content. The service sends this to the key server to identify the current endpoint. How unique you make this 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

      Returns:
      Returns a reference to this object so that method calls can be chained together.
    • drmSystemsWithStrings

      SpekeKeyProvider.Builder drmSystemsWithStrings(Collection<String> drmSystems)

      The DRM solution provider you're using to protect your content during distribution.

      Parameters:
      drmSystems - The DRM solution provider you're using to protect your content during distribution.
      Returns:
      Returns a reference to this object so that method calls can be chained together.
    • drmSystemsWithStrings

      SpekeKeyProvider.Builder drmSystemsWithStrings(String... drmSystems)

      The DRM solution provider you're using to protect your content during distribution.

      Parameters:
      drmSystems - The DRM solution provider you're using to protect your content during distribution.
      Returns:
      Returns a reference to this object so that method calls can be chained together.
    • drmSystems

      The DRM solution provider you're using to protect your content during distribution.

      Parameters:
      drmSystems - The DRM solution provider you're using to protect your content during distribution.
      Returns:
      Returns a reference to this object so that method calls can be chained together.
    • drmSystems

      SpekeKeyProvider.Builder drmSystems(DrmSystem... drmSystems)

      The DRM solution provider you're using to protect your content during distribution.

      Parameters:
      drmSystems - The DRM solution provider you're using to protect your content during distribution.
      Returns:
      Returns a reference to this object so that method calls can be chained together.
    • roleArn

      SpekeKeyProvider.Builder roleArn(String roleArn)

      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

      Parameters:
      roleArn - 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

      Returns:
      Returns a reference to this object so that method calls can be chained together.
    • url

      The URL of the API Gateway proxy that you set up to talk to your key server. The API Gateway proxy must reside in the same AWS Region as MediaPackage and must start with https://.

      The following example shows a URL: https://1wm2dx1f33.execute-api.us-west-2.amazonaws.com/SpekeSample/copyProtection

      Parameters:
      url - The URL of the API Gateway proxy that you set up to talk to your key server. The API Gateway proxy must reside in the same AWS Region as MediaPackage and must start with https://.

      The following example shows a URL: https://1wm2dx1f33.execute-api.us-west-2.amazonaws.com/SpekeSample/copyProtection

      Returns:
      Returns a reference to this object so that method calls can be chained together.