diff --git a/include/assume_role b/include/assume_role index a02ae7cadd..d4237bcd5e 100644 --- a/include/assume_role +++ b/include/assume_role @@ -12,6 +12,9 @@ # specific language governing permissions and limitations under the License. assume_role(){ + MY_AWS_ACCESS_KEY_ID=$AWS_ACCESS_KEY_ID + MY_AWS_SECRET_ACCESS_KEY=$AWS_SECRET_ACCESS_KEY + MY_SESSION_TOKEN=$AWS_SESSION_TOKEN PROFILE_OPT=$PROFILE_OPT_BAK # Both variables are mandatory to be set together if [[ -z $ROLE_TO_ASSUME || -z $ACCOUNT_TO_ASSUME ]]; then @@ -84,3 +87,9 @@ cleanSTSAssumeFile() { rm -fr "${TEMP_STS_ASSUMED_FILE}" rm -fr "${TEMP_STS_ASSUMED_ERROR}" } + + restoreAWSCredentials() { + AWS_ACCESS_KEY_ID=$MY_AWS_ACCESS_KEY_ID + AWS_SECRET_ACCESS_KEY=$MY_AWS_SECRET_ACCESS_KEY + SESSION_TOKEN=$MY_AWS_SESSION_TOKEN +} diff --git a/prowler b/prowler index 6d2bc68f76..3cadc1bf12 100755 --- a/prowler +++ b/prowler @@ -662,6 +662,9 @@ if [[ $GROUP_ID_READ ]];then fi cleanTemp scoring + if [[ $ACCOUNT_TO_ASSUME ]]; then + restoreAWSCredentials + fi copyToS3 exit $EXITCODE else @@ -690,6 +693,9 @@ if [[ $CHECK_ID ]];then if [[ "${MODES[@]}" =~ "html" ]]; then addHtmlFooter >> ${OUTPUT_FILE_NAME}.$EXTENSION_HTML fi + if [[ $ACCOUNT_TO_ASSUME ]]; then + restoreAWSCredentials + fi copyToS3 scoring cleanTemp @@ -704,13 +710,9 @@ fi scoring cleanTemp +if [[ $ACCOUNT_TO_ASSUME ]]; then + restoreAWSCredentials +fi copyToS3 -if [[ $ACCOUNT_TO_ASSUME ]]; then - # unset env variables with assumed role credentials - unset AWS_ACCESS_KEY_ID - unset AWS_SECRET_ACCESS_KEY - unset AWS_SESSION_TOKEN -fi - exit $EXITCODE