Hello, I was receiving the following error when using the GetPreSignedUrl method: "Requests specifying Server Side Encryption with AWS KMS managed keys require AWS Signature Version 4."
I solved this problem by adding this code to the "internal static string GetPresignedUrl" method.
AWSConfigsS3.UseSignatureVersion4 = true;
https://docs.aws.amazon.com/AmazonS3/latest/userguide/UsingAWSSDK.html#specify-signature-version
To avoid having a clone of this component, can please include this optional parameter in the method?
I'm happy to contribute!
Hello JoãoThanks for sharing the solution and for pointing this out!We’ll prioritize this and plan to include the fix in an upcoming release.Appreciate your willingness to contribute! Thank you
Hi I'm also getting issues with GetPreSignedUrl... It was working fine but now I get this error...Is it related?
MessageMethod not found: 'System.Threading.Tasks.Task`1 Amazon.Runtime.SharedInterfaces.ICoreAmazonS3.DoesS3BucketExistAsync(System.String)'.
Environment InformationeSpaceVer: Id=55172, PubId=0, CompiledWith=11.27.0.42539RequestUrl: https://.... /screenservices/BPMFileStorage_CW/ActionPreUploadFileUrl (Method: POST)AppDomain: /LM/W3SVC/1/ROOT/------------------------FilePath: D:\OutSystems\Platform Server\running\Pathway---------------\ClientIp: 10.12.207.14 X-Forwarded-For: --------------Locale: en-USDateFormat: dd/MM/yyyyPID: ---- ('w3wp', Started='8/1/2025 3:23:38 AM', Priv=1313Mb, Virt=2107926Mb)TID: 36Thread Name:.NET: 4.0.30319.42000
StackMethod not found: 'System.Threading.Tasks.Task`1 Amazon.Runtime.SharedInterfaces.ICoreAmazonS3.DoesS3BucketExistAsync(System.String)'. at OutSystems.NssAmazonS3_ext.AmazonS3Connector.GetPresignedUrl(RCS3_AuthenticationinfoRecord ssAuthenticationInfo, Boolean useHttps, String bucketName, String key, Double expiresIn, String verb) at OutSystems.NssAmazonS3_ext.CssAmazonS3_ext.MssS3_GetPreSignedUrl(RCS3_AuthenticationinfoRecord ssAuthenticationInfo, Boolean ssUseHttps, String ssBucketName, String ssKey, Decimal ssExpiresIn, String ssVerb, String& ssUrl) at ssAmazonS3_IS.RssExtensionAmazonS3_ext.MssS3_GetPreSignedUrl(HeContext heContext, IRecord inParamAuthenticationInfo, Boolean inParamUseHttps, String inParamBucketName, String inParamKey, Decimal inParamExpiresIn, String inParamVerb, String& outParamUrl)