public class StartStreamEncryptionRequest extends AmazonWebServiceRequest implements java.io.Serializable
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,
Kinesis Data Streams returns immediately and sets the status of the stream to
UPDATING
. After the update is complete, Kinesis Data Streams
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
, encryption begins for records written to the stream.
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 five seconds after the stream is in an
ACTIVE
status before all records written to the stream are
encrypted. After you enable encryption, you can verify that encryption is
applied by inspecting the API response from PutRecord
or
PutRecords
.
Constructor and Description |
---|
StartStreamEncryptionRequest() |
Modifier and Type | Method and Description |
---|---|
boolean |
equals(java.lang.Object obj) |
java.lang.String |
getEncryptionType()
The encryption type to use.
|
java.lang.String |
getKeyId()
The GUID for the customer-managed AWS KMS key to use for encryption.
|
java.lang.String |
getStreamName()
The name of the stream for which to start encrypting records.
|
int |
hashCode() |
void |
setEncryptionType(EncryptionType encryptionType)
The encryption type to use.
|
void |
setEncryptionType(java.lang.String encryptionType)
The encryption type to use.
|
void |
setKeyId(java.lang.String keyId)
The GUID for the customer-managed AWS KMS key to use for encryption.
|
void |
setStreamName(java.lang.String streamName)
The name of the stream for which to start encrypting records.
|
java.lang.String |
toString()
Returns a string representation of this object; useful for testing and
debugging.
|
StartStreamEncryptionRequest |
withEncryptionType(EncryptionType encryptionType)
The encryption type to use.
|
StartStreamEncryptionRequest |
withEncryptionType(java.lang.String encryptionType)
The encryption type to use.
|
StartStreamEncryptionRequest |
withKeyId(java.lang.String keyId)
The GUID for the customer-managed AWS KMS key to use for encryption.
|
StartStreamEncryptionRequest |
withStreamName(java.lang.String streamName)
The name of the stream for which to start encrypting records.
|
clone, getCloneRoot, getCloneSource, getGeneralProgressListener, getRequestClientOptions, getRequestCredentials, getRequestMetricCollector, setGeneralProgressListener, setRequestCredentials, setRequestMetricCollector, withGeneralProgressListener, withRequestMetricCollector
public java.lang.String getStreamName()
The name of the stream for which to start encrypting records.
Constraints:
Length: 1 - 128
Pattern: [a-zA-Z0-9_.-]+
The name of the stream for which to start encrypting records.
public void setStreamName(java.lang.String streamName)
The name of the stream for which to start encrypting records.
Constraints:
Length: 1 - 128
Pattern: [a-zA-Z0-9_.-]+
streamName
- The name of the stream for which to start encrypting records.
public StartStreamEncryptionRequest withStreamName(java.lang.String streamName)
The name of the stream for which to start encrypting records.
Returns a reference to this object so that method calls can be chained together.
Constraints:
Length: 1 - 128
Pattern: [a-zA-Z0-9_.-]+
streamName
- The name of the stream for which to start encrypting records.
public java.lang.String getEncryptionType()
The encryption type to use. The only valid value is KMS
.
Constraints:
Allowed Values: NONE, KMS
The encryption type to use. The only valid value is
KMS
.
EncryptionType
public void setEncryptionType(java.lang.String encryptionType)
The encryption type to use. The only valid value is KMS
.
Constraints:
Allowed Values: NONE, KMS
encryptionType
-
The encryption type to use. The only valid value is
KMS
.
EncryptionType
public StartStreamEncryptionRequest withEncryptionType(java.lang.String encryptionType)
The encryption type to use. The only valid value is KMS
.
Returns a reference to this object so that method calls can be chained together.
Constraints:
Allowed Values: NONE, KMS
encryptionType
-
The encryption type to use. The only valid value is
KMS
.
EncryptionType
public void setEncryptionType(EncryptionType encryptionType)
The encryption type to use. The only valid value is KMS
.
Constraints:
Allowed Values: NONE, KMS
encryptionType
-
The encryption type to use. The only valid value is
KMS
.
EncryptionType
public StartStreamEncryptionRequest withEncryptionType(EncryptionType encryptionType)
The encryption type to use. The only valid value is KMS
.
Returns a reference to this object so that method calls can be chained together.
Constraints:
Allowed Values: NONE, KMS
encryptionType
-
The encryption type to use. The only valid value is
KMS
.
EncryptionType
public java.lang.String getKeyId()
The GUID for the customer-managed AWS KMS key to use for encryption. This
value can be a globally unique identifier, a fully specified Amazon
Resource Name (ARN) to either an alias or a key, or an alias name
prefixed by "alias/".You can also use a master key owned by Kinesis Data
Streams by specifying the alias aws/kinesis
.
Key ARN example:
arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012
Alias ARN example:
arn:aws:kms:us-east-1:123456789012:alias/MyAliasName
Globally unique key ID example:
12345678-1234-1234-1234-123456789012
Alias name example: alias/MyAliasName
Master key owned by Kinesis Data Streams: alias/aws/kinesis
Constraints:
Length: 1 - 2048
The GUID for the customer-managed AWS KMS key to use for
encryption. This value can be a globally unique identifier, a
fully specified Amazon Resource Name (ARN) to either an alias or
a key, or an alias name prefixed by "alias/".You can also use a
master key owned by Kinesis Data Streams by specifying the alias
aws/kinesis
.
Key ARN example:
arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012
Alias ARN example:
arn:aws:kms:us-east-1:123456789012:alias/MyAliasName
Globally unique key ID example:
12345678-1234-1234-1234-123456789012
Alias name example: alias/MyAliasName
Master key owned by Kinesis Data Streams:
alias/aws/kinesis
public void setKeyId(java.lang.String keyId)
The GUID for the customer-managed AWS KMS key to use for encryption. This
value can be a globally unique identifier, a fully specified Amazon
Resource Name (ARN) to either an alias or a key, or an alias name
prefixed by "alias/".You can also use a master key owned by Kinesis Data
Streams by specifying the alias aws/kinesis
.
Key ARN example:
arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012
Alias ARN example:
arn:aws:kms:us-east-1:123456789012:alias/MyAliasName
Globally unique key ID example:
12345678-1234-1234-1234-123456789012
Alias name example: alias/MyAliasName
Master key owned by Kinesis Data Streams: alias/aws/kinesis
Constraints:
Length: 1 - 2048
keyId
-
The GUID for the customer-managed AWS KMS key to use for
encryption. This value can be a globally unique identifier, a
fully specified Amazon Resource Name (ARN) to either an alias
or a key, or an alias name prefixed by "alias/".You can also
use a master key owned by Kinesis Data Streams by specifying
the alias aws/kinesis
.
Key ARN example:
arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012
Alias ARN example:
arn:aws:kms:us-east-1:123456789012:alias/MyAliasName
Globally unique key ID example:
12345678-1234-1234-1234-123456789012
Alias name example: alias/MyAliasName
Master key owned by Kinesis Data Streams:
alias/aws/kinesis
public StartStreamEncryptionRequest withKeyId(java.lang.String keyId)
The GUID for the customer-managed AWS KMS key to use for encryption. This
value can be a globally unique identifier, a fully specified Amazon
Resource Name (ARN) to either an alias or a key, or an alias name
prefixed by "alias/".You can also use a master key owned by Kinesis Data
Streams by specifying the alias aws/kinesis
.
Key ARN example:
arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012
Alias ARN example:
arn:aws:kms:us-east-1:123456789012:alias/MyAliasName
Globally unique key ID example:
12345678-1234-1234-1234-123456789012
Alias name example: alias/MyAliasName
Master key owned by Kinesis Data Streams: alias/aws/kinesis
Returns a reference to this object so that method calls can be chained together.
Constraints:
Length: 1 - 2048
keyId
-
The GUID for the customer-managed AWS KMS key to use for
encryption. This value can be a globally unique identifier, a
fully specified Amazon Resource Name (ARN) to either an alias
or a key, or an alias name prefixed by "alias/".You can also
use a master key owned by Kinesis Data Streams by specifying
the alias aws/kinesis
.
Key ARN example:
arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012
Alias ARN example:
arn:aws:kms:us-east-1:123456789012:alias/MyAliasName
Globally unique key ID example:
12345678-1234-1234-1234-123456789012
Alias name example: alias/MyAliasName
Master key owned by Kinesis Data Streams:
alias/aws/kinesis
public java.lang.String toString()
toString
in class java.lang.Object
Object.toString()
public int hashCode()
hashCode
in class java.lang.Object
public boolean equals(java.lang.Object obj)
equals
in class java.lang.Object
Copyright © 2018 Amazon Web Services, Inc. All Rights Reserved.