Hello,


I use nifi in 1.15.3 version.



I have to reach aws ressources (S3,SQS..) which have VPCE in front.



My test pipeline for this usecase is a simple ListS3 with AwsCredentials 
controller.



In the listS3 i have set the bucket’s name, the region, point it to the 
credentials controller and set an endpoint override url with a url like this :

https://bucketname.vpce-xxx-xxx.s3.eu-west-3.vpce.amazonaws.com



For the controller, i set up access id/secret id, the role’s arn i have to 
assume, the role assume session name, and the sts vpce endpoint url which have 
this form :

vpce-xxx-xxx.sts.eu-west-3.vpce.amazonaws.com<http://west-3.vpce.amazonaws.com> 
(tried with and without https:// in front)d



When i start this flow i’ve got this error :



2022-03-04 08:42:08,067 ERROR [Timer-Driven Process Thread-16] 
org.apache.nifi.processors.aws.s3.ListS3 
ListS3[id=501cd602-017f-1000-ffff-ffff9f28cb25] Failed to list contents of 
bucket due to 
com.amazonaws.services.securitytoken.model.AWSSecurityTokenServiceException: 
Credential should be scoped to a valid region, not 'vpce'. (Service: 
AWSSecurityTokenService; Status Code: 403; Error Code: SignatureDoesNotMatch; 
Request ID: d57a4d34-7e59-41ba-9e71-4505dd801e75; Proxy: null): 
com.amazonaws.services.securitytoken.model.AWSSecurityTokenServiceException: 
Credential should be scoped to a valid region, not 'vpce'. (Service: 
AWSSecurityTokenService; Status Code: 403; Error Code: SignatureDoesNotMatch; 
Request ID: d57a4d34-7e59-41ba-9e71-4505dd801e75; Proxy: null)

com.amazonaws.services.securitytoken.model.AWSSecurityTokenServiceException: 
Credential should be scoped to a valid region, not 'vpce'. (Service: 
AWSSecurityTokenService; Status Code: 403; Error Code: SignatureDoesNotMatch; 
Request ID: d57a4d34-7e59-41ba-9e71-4505dd801e75; Proxy: null)

            at 
com.amazonaws.http.AmazonHttpClient$RequestExecutor.handleErrorResponse(AmazonHttpClient.java:1819)

            at 
com.amazonaws.http.AmazonHttpClient$RequestExecutor.handleServiceErrorResponse(AmazonHttpClient.java:1403)

            at 
com.amazonaws.http.AmazonHttpClient$RequestExecutor.executeOneRequest(AmazonHttpClient.java:1372)

            at 
com.amazonaws.http.AmazonHttpClient$RequestExecutor.executeHelper(AmazonHttpClient.java:1145)

            at 
com.amazonaws.http.AmazonHttpClient$RequestExecutor.doExecute(AmazonHttpClient.java:802)

            at 
com.amazonaws.http.AmazonHttpClient$RequestExecutor.executeWithTimer(AmazonHttpClient.java:770)

            at 
com.amazonaws.http.AmazonHttpClient$RequestExecutor.execute(AmazonHttpClient.java:744)

            at 
com.amazonaws.http.AmazonHttpClient$RequestExecutor.access$500(AmazonHttpClient.java:704)

            at 
com.amazonaws.http.AmazonHttpClient$RequestExecutionBuilderImpl.execute(AmazonHttpClient.java:686)

            at 
com.amazonaws.http.AmazonHttpClient.execute(AmazonHttpClient.java:550)

            at 
com.amazonaws.http.AmazonHttpClient.execute(AmazonHttpClient.java:530)

            at 
com.amazonaws.services.securitytoken.AWSSecurityTokenServiceClient.doInvoke(AWSSecurityTokenServiceClient.java:1728)

            at 
com.amazonaws.services.securitytoken.AWSSecurityTokenServiceClient.invoke(AWSSecurityTokenServiceClient.java:1695)

            at 
com.amazonaws.services.securitytoken.AWSSecurityTokenServiceClient.invoke(AWSSecurityTokenServiceClient.java:1684)

            at 
com.amazonaws.services.securitytoken.AWSSecurityTokenServiceClient.executeAssumeRole(AWSSecurityTokenServiceClient.java:488)

            at 
com.amazonaws.services.securitytoken.AWSSecurityTokenServiceClient.assumeRole(AWSSecurityTokenServiceClient.java:457)

            at 
com.amazonaws.auth.STSAssumeRoleSessionCredentialsProvider.newSession(STSAssumeRoleSessionCredentialsProvider.java:343)

            at 
com.amazonaws.auth.STSAssumeRoleSessionCredentialsProvider.access$000(STSAssumeRoleSessionCredentialsProvider.java:41)

            at 
com.amazonaws.auth.STSAssumeRoleSessionCredentialsProvider$1.call(STSAssumeRoleSessionCredentialsProvider.java:90)

            at 
com.amazonaws.auth.STSAssumeRoleSessionCredentialsProvider$1.call(STSAssumeRoleSessionCredentialsProvider.java:87)

            at 
com.amazonaws.auth.RefreshableTask.refreshValue(RefreshableTask.java:257)

            at 
com.amazonaws.auth.RefreshableTask.blockingRefresh(RefreshableTask.java:213)

            at 
com.amazonaws.auth.RefreshableTask.getValue(RefreshableTask.java:154)

            at 
com.amazonaws.auth.STSAssumeRoleSessionCredentialsProvider.getCredentials(STSAssumeRoleSessionCredentialsProvider.java:315)

            at 
com.amazonaws.auth.STSAssumeRoleSessionCredentialsProvider.getCredentials(STSAssumeRoleSessionCredentialsProvider.java:40)

            at 
com.amazonaws.http.AmazonHttpClient$RequestExecutor.getCredentialsFromContext(AmazonHttpClient.java:1257)

            at 
com.amazonaws.http.AmazonHttpClient$RequestExecutor.runBeforeRequestHandlers(AmazonHttpClient.java:833)

            at 
com.amazonaws.http.AmazonHttpClient$RequestExecutor.doExecute(AmazonHttpClient.java:783)

            at 
com.amazonaws.http.AmazonHttpClient$RequestExecutor.executeWithTimer(AmazonHttpClient.java:770)

            at 
com.amazonaws.http.AmazonHttpClient$RequestExecutor.execute(AmazonHttpClient.java:744)

            at 
com.amazonaws.http.AmazonHttpClient$RequestExecutor.access$500(AmazonHttpClient.java:704)

            at 
com.amazonaws.http.AmazonHttpClient$RequestExecutionBuilderImpl.execute(AmazonHttpClient.java:686)

            at 
com.amazonaws.http.AmazonHttpClient.execute(AmazonHttpClient.java:550)

            at 
com.amazonaws.http.AmazonHttpClient.execute(AmazonHttpClient.java:530)

            at 
com.amazonaws.services.s3.AmazonS3Client.invoke(AmazonS3Client.java:5445)

            at 
com.amazonaws.services.s3.AmazonS3Client.invoke(AmazonS3Client.java:5392)

            at 
com.amazonaws.services.s3.AmazonS3Client.invoke(AmazonS3Client.java:5386)

            at 
com.amazonaws.services.s3.AmazonS3Client.listObjects(AmazonS3Client.java:927)

            at 
org.apache.nifi.processors.aws.s3.ListS3$S3ObjectBucketLister.listVersions(ListS3.java:544)







I see than there is some ticket which refer to this issue, and that it should 
be resolved :

https://issues.apache.org/jira/browse/NIFI-5456

https://issues.apache.org/jira/browse/NIFI-8662



I don’t knwon if it’s a misconfiguration from me or if it’s still this bug 
concern.



Could you help me to resolve this please ?



Really thanks.



ML




Interne

-------
Ce message et toutes les pièces jointes sont établis à l'intention exclusive de 
ses destinataires et sont confidentiels. L'intégrité de ce message n'étant pas 
assurée sur Internet, la SNCF ne peut être tenue responsable des altérations 
qui pourraient se produire sur son contenu. Toute publication, utilisation, 
reproduction, ou diffusion, même partielle, non autorisée préalablement par la 
SNCF, est strictement interdite. Si vous n'êtes pas le destinataire de ce 
message, merci d'en avertir immédiatement l'expéditeur et de le détruire.
-------
This message and any attachments are intended solely for the addressees and are 
confidential. SNCF may not be held responsible for their contents whose 
accuracy and completeness cannot be guaranteed over the Internet. Unauthorized 
use, disclosure, distribution, copying, or any part thereof is strictly 
prohibited. If you are not the intended recipient of this message, please 
notify the sender immediately and delete it.

Reply via email to