private void configureAccessLog(LoadBalancerAttributes attributes, Regions region) { ELBAccessLogBucketPolicyBuilder builder = new ELBAccessLogBucketPolicyBuilder(); String bucketName = resource.accessLogBucket.remoteBucket.getName(); AWS.s3.s3.setBucketPolicy(new SetBucketPolicyRequest(bucketName, builder.policyText(region, bucketName))); attributes.withAccessLog(new AccessLog() .withEnabled(true) .withS3BucketName(bucketName) .withS3BucketPrefix("elb/" + resource.id)); }
@Override public void setBucketPolicy(SetBucketPolicyRequest setBucketPolicyRequest) throws AmazonClientException, AmazonServiceException { delegate.setBucketPolicy(setBucketPolicyRequest); }
@Override public void setBucketPolicy(SetBucketPolicyRequest setBucketPolicyRequest) throws SdkClientException, AmazonServiceException { run(() -> getDelegate().setBucketPolicy(setBucketPolicyRequest)); }
public void createS3BucketIfNotExist(String bucketName, String regionName, boolean isOutputBucket) throws TranscodeException{ s3client.setRegion(Region.getRegion(Regions.fromName(regionName))); try { if(!(s3client.doesBucketExist(bucketName))) { // Note that CreateBucketRequest does not specify region. So bucket is // created in the region specified in the client. s3client.createBucket(new CreateBucketRequest( bucketName)); } if (isOutputBucket){ String policyText = "{" + "\"Id\": \"1\"," + "\"Version\": \"2012-10-17\"," + "\"Statement\": [" + " {" + " \"Sid\": \"1\"," + " \"Action\": [" + " \"s3:GetObject\"" + " ]," + " \"Effect\": \"Allow\"," + " \"Resource\": \"arn:aws:s3:::"+bucketName+"/*\"," + " \"Principal\": \"*\"" + " }" + "]" + "}"; SetBucketPolicyRequest setBucketPolicyRequest = new SetBucketPolicyRequest(bucketName, policyText); s3client.setBucketPolicy(setBucketPolicyRequest); } } catch (AmazonServiceException ase) { logger.error("Caught an AmazonServiceException, which " + "means your request made it " + "to Amazon S3, but was rejected with an error response" + " for some reason.", ase); throw new TranscodeException(ase.getMessage()); } catch (AmazonClientException ace) { logger.error("Caught an AmazonClientException, which " + "means the client encountered " + "an internal error while trying to " + "communicate with S3, " + "such as not being able to access the network.", ace); throw new TranscodeException(ace.getMessage()); } catch (IllegalArgumentException ie) { logger.error("Couldn't get the region", ie); throw new TranscodeException(ie.getMessage()); } }
@Override public void setBucketPolicy(SetBucketPolicyRequest setBucketPolicyRequest) throws AmazonClientException { }
@Override public void setBucketPolicy(SetBucketPolicyRequest setBucketPolicyRequest) throws AmazonClientException, AmazonServiceException { // TODO Auto-generated method stub }