Я хочу создать политику, которая выглядит следующим образом (которая разрешит кросс-аккаунт доступ к SNS topi c):
{
"Statement":[{
"Effect":"Allow",
"Principal":{
"AWS":"111122223333"
},
"Action":"sns:Subscribe",
"Resource":"arn:aws:sns:us-east-2:123456789012:MyTopic"
}]
}
Как мне создать это с помощью Java CDK? Я думаю, что я должен использовать AccountPrincipal
, но я не могу найти класс, который кажется уместным, с конструктором publi c.
myTopic.addToResourcePolicy(
PolicyStatement.Builder
.create()
.actions(List.of("sns:Subscribe"))
.effect(Effect.ALLOW)
.resources(List.of("arn:aws:sns:us-east-2:123456789012:MyTopic"))
.principals(List.of( ...how do I create a principal here?... ))
.build()
);