Search in sources :

Example 1 with SigningTestCase

use of software.amazon.awssdk.authcrt.signer.SigningTestCase in project aws-sdk-java-v2 by aws.

the class AwsCrt4aSigningAdapterTest method sign_forHeader_works.

@Test
void sign_forHeader_works() {
    SigningTestCase testCase = SignerTestUtils.createBasicHeaderSigningTestCase();
    ExecutionAttributes executionAttributes = SignerTestUtils.buildBasicExecutionAttributes(testCase);
    SdkHttpFullRequest request = testCase.requestBuilder.build();
    AwsSigningConfig signingConfig = configProvider.createCrtSigningConfig(executionAttributes);
    SdkSigningResult signed = crtSigningAdapter.sign(request, signingConfig);
    SdkHttpFullRequest signedRequest = signed.getSignedRequest();
    String signatureValue = extractSignatureFromAuthHeader(signedRequest);
    assertTrue(SignerTestUtils.verifyEcdsaSignature(request, testCase.expectedCanonicalRequest, signingConfig, signatureValue));
}
Also used : SigningTestCase(software.amazon.awssdk.authcrt.signer.SigningTestCase) ExecutionAttributes(software.amazon.awssdk.core.interceptor.ExecutionAttributes) SdkHttpFullRequest(software.amazon.awssdk.http.SdkHttpFullRequest) AwsSigningConfig(software.amazon.awssdk.crt.auth.signing.AwsSigningConfig) Test(org.junit.jupiter.api.Test)

Example 2 with SigningTestCase

use of software.amazon.awssdk.authcrt.signer.SigningTestCase in project aws-sdk-java-v2 by aws.

the class AwsCrt4aSigningAdapterTest method signRequest_forHeader_works.

@Test
public void signRequest_forHeader_works() {
    SigningTestCase testCase = SignerTestUtils.createBasicHeaderSigningTestCase();
    ExecutionAttributes executionAttributes = SignerTestUtils.buildBasicExecutionAttributes(testCase);
    SdkHttpFullRequest request = testCase.requestBuilder.build();
    AwsSigningConfig signingConfig = configProvider.createCrtSigningConfig(executionAttributes);
    SdkHttpFullRequest signed = crtSigningAdapter.signRequest(request, signingConfig);
    String signatureValue = extractSignatureFromAuthHeader(signed);
    assertTrue(SignerTestUtils.verifyEcdsaSignature(request, testCase.expectedCanonicalRequest, signingConfig, signatureValue));
}
Also used : SigningTestCase(software.amazon.awssdk.authcrt.signer.SigningTestCase) ExecutionAttributes(software.amazon.awssdk.core.interceptor.ExecutionAttributes) SdkHttpFullRequest(software.amazon.awssdk.http.SdkHttpFullRequest) AwsSigningConfig(software.amazon.awssdk.crt.auth.signing.AwsSigningConfig) Test(org.junit.jupiter.api.Test)

Example 3 with SigningTestCase

use of software.amazon.awssdk.authcrt.signer.SigningTestCase in project aws-sdk-java-v2 by aws.

the class BaseSigningScopeTest method presigning_withDefaultScopeAndExplicitScope_usesExplicitScope.

@Test
public void presigning_withDefaultScopeAndExplicitScope_usesExplicitScope() {
    SigningTestCase testCase = SignerTestUtils.createBasicHeaderSigningTestCase();
    String expectdScope = "us-west-2";
    SdkHttpFullRequest signedRequest = presignRequestWithScope(testCase, RegionScope.GLOBAL, RegionScope.create(expectdScope));
    assertThat(signedRequest.rawQueryParameters().get("X-Amz-Region-Set")).containsExactly(expectdScope);
}
Also used : SigningTestCase(software.amazon.awssdk.authcrt.signer.SigningTestCase) SdkHttpFullRequest(software.amazon.awssdk.http.SdkHttpFullRequest) Test(org.junit.jupiter.api.Test)

Example 4 with SigningTestCase

use of software.amazon.awssdk.authcrt.signer.SigningTestCase in project aws-sdk-java-v2 by aws.

the class BaseSigningScopeTest method signing_withSigningRegionAndRegionScope_usesRegionScope.

@Test
public void signing_withSigningRegionAndRegionScope_usesRegionScope() {
    SigningTestCase testCase = SignerTestUtils.createBasicHeaderSigningTestCase();
    SdkHttpFullRequest signedRequest = signRequestWithScope(testCase, null, RegionScope.GLOBAL);
    String regionHeader = signedRequest.firstMatchingHeader("X-Amz-Region-Set").get();
    assertThat(regionHeader).isEqualTo(RegionScope.GLOBAL.id());
}
Also used : SigningTestCase(software.amazon.awssdk.authcrt.signer.SigningTestCase) SdkHttpFullRequest(software.amazon.awssdk.http.SdkHttpFullRequest) Test(org.junit.jupiter.api.Test)

Example 5 with SigningTestCase

use of software.amazon.awssdk.authcrt.signer.SigningTestCase in project aws-sdk-java-v2 by aws.

the class BaseSigningScopeTest method signing_withSigningRegionOnly_usesSigningRegion.

@Test
public void signing_withSigningRegionOnly_usesSigningRegion() {
    SigningTestCase testCase = SignerTestUtils.createBasicHeaderSigningTestCase();
    SdkHttpFullRequest signedRequest = signRequestWithScope(testCase, null, null);
    String regionHeader = signedRequest.firstMatchingHeader("X-Amz-Region-Set").get();
    assertThat(regionHeader).isEqualTo(Region.AWS_GLOBAL.id());
}
Also used : SigningTestCase(software.amazon.awssdk.authcrt.signer.SigningTestCase) SdkHttpFullRequest(software.amazon.awssdk.http.SdkHttpFullRequest) Test(org.junit.jupiter.api.Test)

Aggregations

SigningTestCase (software.amazon.awssdk.authcrt.signer.SigningTestCase)29 SdkHttpFullRequest (software.amazon.awssdk.http.SdkHttpFullRequest)23 Test (org.junit.jupiter.api.Test)20 ExecutionAttributes (software.amazon.awssdk.core.interceptor.ExecutionAttributes)19 AwsSigningConfig (software.amazon.awssdk.crt.auth.signing.AwsSigningConfig)10 Test (org.junit.Test)9 Instant (java.time.Instant)1 AwsSigningResult (software.amazon.awssdk.crt.auth.signing.AwsSigningResult)1