@Test public void testHeadBucket() throws URISyntaxException { final AWSS3V4Signer signer = new S3SignerWithDateOverride(new Date(1431114075631L)); // THESE ARE BOGUS CREDENTIALS final AWSCredentials credentials = new BasicAWSCredentials( "AKIAJd4scjDDmxXZTESTGOZQ", "LYd/ad4scjDDmxXZTESTtRz7xdOM1SiD6"); // Simulates s3.doesBucketExist final Request<?> hr = new DefaultRequest(new HeadBucketRequest("test-bucket123456"), Constants.S3_SERVICE_DISPLAY_NAME); hr.setHttpMethod(HttpMethodName.HEAD); hr.setEndpoint(new URI("https://test-bucket123456.s3-us-west-2.amazonaws.com")); hr.addHeader("Host", "test-bucket123456.s3-us-west-2.amazonaws.com"); signer.sign(hr, credentials); assertEquals(getSignature(hr), "fc4922636f1a748e0d2c197b127180c2ae7f5fc1e4a0be33732431f58f6eac51"); }
@Test public void testSignGetObject() throws URISyntaxException { final AWSS3V4Signer signer = new S3SignerWithDateOverride(new Date(1431114076667L)); // THESE ARE BOGUS CREDENTIALS final AWSCredentials credentials = new BasicAWSCredentials( "AKIAJd4scjDDmxXZTESTGOZQ", "LYd/ad4scjDDmxXZTESTtRz7xdOM1SiD6"); // Simulates getObject final GetObjectRequest getRequest = new GetObjectRequest("test-bucket123456", "key"); final Request<?> gr = new DefaultRequest(getRequest, Constants.S3_SERVICE_DISPLAY_NAME); gr.setEndpoint(new URI("https://test-bucket123456.s3-us-west-2.amazonaws.com")); gr.setHttpMethod(HttpMethodName.GET); gr.setResourcePath("key"); gr.addHeader("Host", "test-bucket123456.s3-us-west-2.amazonaws.com"); signer.sign(gr, credentials); assertEquals(getSignature(gr), "7f8a09e22f7d2899e8b41857516d16ecf10680627c35693958e6e205fda8419e"); }
@Test public void testSignPutObject() throws URISyntaxException { final AWSS3V4Signer signer = new S3SignerWithDateOverride(new Date(1431115356859L)); // THESE ARE BOGUS CREDENTIALS final AWSCredentials credentials = new BasicAWSCredentials( "AKIAJd4scjDDmxXZTESTGOZQ", "LYd/ad4scjDDmxXZTESTtRz7xdOM1SiD6"); final ByteArrayInputStream bais = new ByteArrayInputStream("content".getBytes(StringUtils.UTF8)); final ObjectMetadata om = new ObjectMetadata(); om.setContentLength("content".getBytes(StringUtils.UTF8).length); final PutObjectRequest por = new PutObjectRequest("test-bucket123456", "key", bais, om); final Request<?> pr = new DefaultRequest(por, Constants.S3_SERVICE_DISPLAY_NAME); pr.setContent(bais); pr.setResourcePath("key"); pr.setHttpMethod(HttpMethodName.PUT); pr.addHeader(Headers.CONTENT_LENGTH, String.valueOf(bais.available())); pr.setEndpoint(new URI("https://test-bucket123456.s3-us-west-2.amazonaws.com")); pr.addHeader("Host", "test-bucket123456.s3-us-west-2.amazonaws.com"); signer.sign(pr, credentials); assertEquals(getSignature(pr), "e0a8ac165c54dc1fc3dd987f5e00b44f1b91f3c63b05ee642432e1f3c7286d69"); }
ir.addParameter("uploads", null); ir.setContent(new ByteArrayInputStream(new byte[0])); signer.sign(ir, credentials); "6E1pXqay7WGHDsWKZ2vuGlba548bNcLNnwTyTnoxiOFQ6S9hejT_dhBpvA0jLAD04oSLOy6R7hrsFFy00O15MoLYD0heUeOn6SglTE6SKWA-"); ur.setHttpMethod(HttpMethodName.PUT); signer.sign(ur, credentials); assertEquals(getSignature(ur), "e7c969db60efd061381cea3c16f9906ffa521967fa45a62104b535c89928f68c"); signer.sign(cr, credentials);