本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
第一次為 Amazon DynamoDB 啟用 Amazon Kinesis Data Streams 時,DynamoDB 會自動為您建立 AWS Identity and Access Management (IAM) 服務連結角色。 DynamoDB 這個角色 (AWSServiceRoleForDynamoDBKinesisDataStreamsReplication
) 可讓 DynamoDB 代表您管理對 Kinesis Data Streams 的項目層級變更的複寫。請勿刪除此服務連結角色。
如需服務連結角色的詳細資訊,請參閱《IAM 使用者指南》中的使用服務連結角色。
注意
DynamoDB 不支援IAM政策的標籤型條件。
若要啟用 Amazon DynamoDB 專用 Amazon Kinesis Data Streams,您必須擁有下列資料表許可:
-
dynamodb:EnableKinesisStreamingDestination
-
kinesis:ListStreams
-
kinesis:PutRecords
-
kinesis:DescribeStream
若要為指定的 DynamoDB 資料表描述 Amazon DynamoDB 專用 Amazon Kinesis Data Streams,您必須擁有下列資料表許可。
-
dynamodb:DescribeKinesisStreamingDestination
-
kinesis:DescribeStreamSummary
-
kinesis:DescribeStream
若要停用 Amazon DynamoDB 專用 Amazon Kinesis Data Streams,您必須擁有下列資料表許可。
-
dynamodb:DisableKinesisStreamingDestination
若要更新 Amazon DynamoDB 的 Amazon Kinesis Data Streams,您必須在 資料表上擁有下列許可。 DynamoDB
-
dynamodb:UpdateKinesisStreamingDestination
下列範例示範如何使用 IAM 政策來授予 Amazon DynamoDB 的 Amazon Kinesis Data Streams 許可。 DynamoDB
範例:啟用 Amazon DynamoDB 專用 Amazon Kinesis Data Streams
下列IAM政策授予許可,以為 Music
資料表啟用 Amazon DynamoDB 的 Amazon Kinesis Data Streams。 DynamoDB 它不會授予許可來停用、更新或描述 DynamoDB 的 Kinesis Data Streams for the Music
Table。
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "iam:CreateServiceLinkedRole",
"Resource": "arn:aws:iam::*:role/aws-service-role/kinesisreplication.dynamodb.amazonaws.com/AWSServiceRoleForDynamoDBKinesisDataStreamsReplication",
"Condition": {"StringLike": {"iam:AWSServiceName": "kinesisreplication.dynamodb.amazonaws.com"}}
},
{
"Effect": "Allow",
"Action": [
"dynamodb:EnableKinesisStreamingDestination"
],
"Resource": "arn:aws:dynamodb:us-west-2:12345678901:table/Music"
}
]
}
範例:更新 Amazon DynamoDB 的 Amazon Kinesis Data Streams DynamoDB
下列IAM政策授予許可,以更新 Amazon DynamoDB 的 Amazon Kinesis Data Streams for the Music
Table。它不會授予許可來為 Music
資料表啟用、停用或描述 Amazon DynamoDB 的 Amazon Kinesis Data Streams。
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"dynamodb:UpdateKinesisStreamingDestination"
],
"Resource": "arn:aws:dynamodb:us-west-2:12345678901:table/Music"
}
]
}
範例:停用 Amazon DynamoDB 專用 Amazon Kinesis Data Streams
下列IAM政策會授予許可,以停用Music
資料表的 Amazon DynamoDB 的 Amazon Kinesis Data Streams。 DynamoDB 它不會授予許可來啟用、更新或描述 Amazon DynamoDB 的 Amazon Kinesis Data Streams for the Music
Table。
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"dynamodb:DisableKinesisStreamingDestination"
],
"Resource": "arn:aws:dynamodb:us-west-2:12345678901:table/Music"
}
]
}
範例:根據資源選擇性地為 Amazon DynamoDB 專用 Amazon Kinesis Data Streams 套用許可
下列IAM政策授予許可,以啟用和描述 Music
Amazon DynamoDB 的 Amazon Kinesis Data Streams for the table,並拒絕停用 Amazon DynamoDB for the Orders
table 的 Amazon Kinesis Data Streams。
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"dynamodb:EnableKinesisStreamingDestination",
"dynamodb:DescribeKinesisStreamingDestination"
],
"Resource": "arn:aws:dynamodb:us-west-2:12345678901:table/Music"
},
{
"Effect": "Deny",
"Action": [
"dynamodb:DisableKinesisStreamingDestination"
],
"Resource": "arn:aws:dynamodb:us-west-2:12345678901:table/Orders"
}
]
}
為 DynamoDB 專用 Kinesis Data Streams 使用服務連結角色
適用於 Amazon DynamoDB 的 Amazon Kinesis Data Streams 使用 AWS Identity and Access Management (IAM) 服務連結角色。 DynamoDB 服務連結角色是直接連結至 DynamoDB 的 Kinesis Data Streams 的唯一IAM角色類型。服務連結角色是由適用於 DynamoDB 的 Kinesis Data Streams 預先定義,並包含服務 AWS 代表您呼叫其他服務所需的所有許可。
服務連結角色可讓 DynamoDB 專用 Kinesis Data Streams 的設定更為簡單,因為您不必手動新增必要的許可。DynamoDB 專用 Kinesis Data Streams 會定義其服務連結角色的許可,除非另有定義,否則僅有 DynamoDB 專用 Kinesis Data Streams 可以擔任其角色。定義的許可包含信任政策和許可政策,而該許可政策不能連接至任何其他 IAM 實體。
如需支援服務連結角色的其他 服務的相關資訊,請參閱AWS 服務連結角色欄中的 服務IAM,並尋找具有是 的服務。 選擇具有連結的 Yes (是),以檢視該服務的服務連結角色文件。
DynamoDB 專用 Kinesis Data Streams 的服務連結角色許可
DynamoDB 的 Kinesis Data Streams 使用名為 的服務連結角色AWSServiceRoleForDynamoDBKinesisDataStreamsReplication。服務連結角色的目的是讓 Amazon DynamoDB 代表您管理對 Kinesis Data Streams 項目層級變更的複寫。
AWSServiceRoleForDynamoDBKinesisDataStreamsReplication
服務連結角色信任下列服務以擔任角色:
-
kinesisreplication.dynamodb.amazonaws.com
此角色許可政策允許 DynamoDB 專用 Kinesis Data Streams 對指定資源完成下列動作:
-
動作:
Kinesis stream
上的Put records and describe
-
動作:
Generate data keys
開啟 ,AWS KMS
以將資料放置在使用使用者產生 AWS KMS 金鑰加密的 Kinesis 串流上。
如需政策文件的確切內容,請參閱 DynamoDBKinesisReplicationServiceRolePolicy
您必須設定許可,IAM 實體 (如使用者、群組或角色) 才可建立、編輯或刪除服務連結角色。如需詳細資訊,請參閱IAM《 使用者指南》中的服務連結角色許可。
為 DynamoDB 專用 Kinesis Data Streams 建立服務連結角色
您不需要手動建立一個服務連結角色。當您在 AWS Management Console、 AWS CLI或 中啟用 DynamoDB 的 Kinesis Data Streams 時 AWS API,DynamoDB 的 Kinesis Data Streams 會為您建立服務連結角色。
若您刪除此服務連結角色,之後需要再次建立,您可以在帳戶中使用相同程序重新建立角色。在啟用 DynamoDB 專用 Kinesis Data Streams 時,DynamoDB 專用 Kinesis Data Streams 會再次為您建立服務連結角色。
為 DynamoDB 專用 Kinesis Data Streams 編輯服務連結角色
DynamoDB 專用 Kinesis Data Streams 不允許您編輯 AWSServiceRoleForDynamoDBKinesisDataStreamsReplication
服務連結角色。因為有各種實體可能會參考服務連結角色,所以您無法在建立角色之後變更角色名稱。然而,您可使用 IAM 來編輯角色描述。如需詳細資訊,請參閱IAM《 使用者指南》中的編輯服務連結角色。
為 DynamoDB 專用 Kinesis Data Streams 刪除服務連結角色
您也可以使用 IAM 主控台、 AWS CLI 或 AWS API來手動刪除服務連結角色。若要執行此操作,您必須先手動清除服務連結角色的資源,然後才能手動刪除它。
注意
若 DynamoDB 專用 Kinesis Data Streams 服務在您試圖刪除資源時正在使用該角色,刪除可能會失敗。若此情況發生,請等待數分鐘後並再次嘗試操作。
使用 IAM 手動刪除服務連結角色
使用 IAM 主控台 AWS CLI、 或 AWS API來刪除AWSServiceRoleForDynamoDBKinesisDataStreamsReplication
服務連結角色。如需詳細資訊,請參閱IAM《 使用者指南》中的刪除服務連結角色。