/// <summary> /// Helper function to set up an Aws.Crt.Auth.SigningConfig /// </summary> /// <param name="signatureType">Signature type</param> /// <param name="region">Signing region</param> /// <param name="service">Service to sign the request for</param> /// <param name="signedAt">Timestamp to sign at</param> /// <param name="credentials">The AWS credentials for the account making the service call</param> /// <returns>Prepared CRT signing configuration</returns> public AwsSigningConfig PrepareCRTSigningConfig(AwsSignatureType signatureType, string region, string service, DateTime signedAt, ImmutableCredentials credentials) { var signingConfig = new AwsSigningConfig { Algorithm = AwsSigningAlgorithm.SIGV4A, SignedBodyHeader = AwsSignedBodyHeaderType.X_AMZ_CONTENT_SHA256, SignatureType = signatureType, Region = region, Service = service, Timestamp = new DateTimeOffset(signedAt), Credentials = new Credentials(credentials.AccessKey, credentials.SecretKey, credentials.Token) }; if (service == "s3") { signingConfig.UseDoubleUriEncode = false; signingConfig.ShouldNormalizeUriPath = false; } else { signingConfig.UseDoubleUriEncode = true; signingConfig.ShouldNormalizeUriPath = true; } return(signingConfig); }
internal AwsSigningConfig BuildDefaultSigningConfig(string service) { var config = new AwsSigningConfig { Algorithm = AwsSigningAlgorithm.SIGV4A, SignedBodyHeader = AwsSignedBodyHeaderType.X_AMZ_CONTENT_SHA256, SignatureType = AwsSignatureType.HTTP_REQUEST_VIA_HEADERS, Region = SigningTestRegion, Service = service, Timestamp = new DateTimeOffset(SigningTestTimepoint), Credentials = new Credentials(SigningTestAccessKeyId, SigningTestSecretAccessKey, "") }; if (service == "s3") { config.UseDoubleUriEncode = false; config.ShouldNormalizeUriPath = false; } else { config.UseDoubleUriEncode = true; config.ShouldNormalizeUriPath = true; } return(config); }
private AwsSigningConfig BuildBaseSigningConfig() { DateTime date = new DateTime(2015, 8, 30, 12, 36, 0, DateTimeKind.Utc); var credentials = new Credentials("AKIDEXAMPLE", "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY", null); var config = new AwsSigningConfig(); config.Credentials = credentials; config.Timestamp = new DateTimeOffset(date); config.Region = "us-east-1"; config.Service = "service"; return(config); }