Skip to content

Commit 3d4d997

Browse files
committed
support sns permission for jsonata
1 parent d301b8e commit 3d4d997

File tree

1 file changed

+9
-6
lines changed

1 file changed

+9
-6
lines changed

lib/deploy/stepFunctions/compileIamRole.js

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -92,13 +92,16 @@ function getSqsPermissions(serverless, state) {
9292
}
9393

9494
function getSnsPermissions(serverless, state) {
95-
if (_.has(state, 'Parameters.TopicArn')
96-
|| _.has(state, ['Parameters', 'TopicArn.$'])) {
97-
// if topic ARN is provided by input, then need pervasive permissions
98-
const topicArn = state.Parameters['TopicArn.$'] ? '*' : state.Parameters.TopicArn;
99-
return [{ action: 'sns:Publish', resource: topicArn }];
95+
const topicArn = getParameterOrArgument(state, "TopicArn");
96+
const topicArnPervasive = getParameterOrArgument(state, "TopicArn.$");
97+
// if topic ARN is provided by input, then need pervasive permissions
98+
if (topicArnPervasive) {
99+
return [{ action: "sns:Publish", resource: "*" }];
100100
}
101-
logger.log('SNS task missing Parameters.TopicArn or Parameters.TopicArn.$');
101+
if (topicArn) {
102+
return [{ action: "sns:Publish", resource: topicArn }];
103+
}
104+
logger.log("SNS task missing Parameters.TopicArn or Parameters.TopicArn.$");
102105
return [];
103106
}
104107

0 commit comments

Comments
 (0)