AWS SDK Version 3 for .NET
API Reference

AWS services or capabilities described in AWS Documentation may vary by region/location. Click Getting Started with Amazon AWS to see specific differences applicable to the China (Beijing) Region.

Container for the parameters to the StartStreamEncryption operation. Enables or updates server-side encryption using an AWS KMS key for a specified stream.

Starting encryption is an asynchronous operation. Upon receiving the request, Amazon Kinesis returns immediately and sets the status of the stream to UPDATING. After the update is complete, Amazon Kinesis sets the status of the stream back to ACTIVE. Updating or applying encryption normally takes a few seconds to complete but it can take minutes. You can continue to read and write data to your stream while its status is UPDATING. Once the status of the stream is ACTIVE, records written to the stream will begin to be encrypted.

API Limits: You can successfully apply a new AWS KMS key for server-side encryption 25 times in a rolling 24 hour period.

Note: It can take up to 5 seconds after the stream is in an ACTIVE status before all records written to the stream are encrypted. After you’ve enabled encryption, you can verify encryption was applied by inspecting the API response from PutRecord or PutRecords.

Inheritance Hierarchy


Namespace: Amazon.Kinesis.Model
Assembly: AWSSDK.Kinesis.dll
Version: 3.x.y.z


public class StartStreamEncryptionRequest : AmazonKinesisRequest

The StartStreamEncryptionRequest type exposes the following members



Public Property EncryptionType Amazon.Kinesis.EncryptionType

Gets and sets the property EncryptionType.

The encryption type to use. This parameter can be one of the following values:

  • NONE: Not valid for this operation. An InvalidOperationException will be thrown.

  • KMS: Use server-side encryption on the records in the stream using a customer-managed KMS key.

Public Property KeyId System.String

Gets and sets the property KeyId.

The GUID for the customer-managed KMS key to use for encryption. You can also use a Kinesis-owned master key by specifying the alias aws/kinesis.

Public Property StreamName System.String

Gets and sets the property StreamName.

The name of the stream for which to start encrypting records.

Version Information

.NET Standard:
Supported in: 1.3

.NET Framework:
Supported in: 4.5, 4.0, 3.5

Portable Class Library:
Supported in: Windows Store Apps
Supported in: Windows Phone 8.1
Supported in: Xamarin Android
Supported in: Xamarin iOS (Unified)
Supported in: Xamarin.Forms

Supported Versions: 4.6 and above
Supported Platforms: Android, iOS, Standalone