What's New?
| Change | Description |
|---|---|
| Support for RDS Multi-Availability Zone | You can now take advantage of the new Multi-AZ Deployments feature
(release notes)
in Amazon Relational Database Service using the AWS SDK for .NET.
The example below demonstrates how to create a new RDS DBInstance that has a hot backup in another EC2 Availability Zone for increased availability and durability. You can also use the SDK to update an existing DBInstance to enable the Multi-Availability Zone feature.
AmazonRDS rds = new AmazonRDSClient(accessKey, secretKey);
DBInstance myDbInstance = rds.CreateDBInstance(
new CreateDBInstanceRequest()
.WithAllocatedStorage(5)
.WithDBInstanceClass("db.m1.small")
.WithDBInstanceIdentifier(databaseInstanceName)
.WithEngine("mysql5.1")
.WithDBName("mydb")
.WithMasterUsername("admin")
.WithMasterUserPassword("pass")
.WithMultiAZ(true));
|
| Support for CloudFront streaming content logging | The AWS SDK for .NET now supports access logs for streaming content in Amazon CloudFront (release notes).
The following example demonstrates how the bucket can be specified for logging:
CloudFrontStreamingDistributionConfig distributionConfig = new CloudFrontStreamingDistributionConfig();
distributionConfig.WithCallerReference(DistributionName);
distributionConfig.WithOrigin("sdk-integration-test");
distributionConfig.WithEnabled(false);
distributionConfig.WithLogging("sdk.logBucketName", "sdk-test");
CreateStreamingDistributionRequest createRequest = new CreateStreamingDistributionRequest();
createRequest.WithStreamingDistributionConfig(distributionConfig);
CreateStreamingDistributionResponse createResponse = CFClient.CreateStreamingDistribution(createRequest);
|
| Support for CloudFront secure connections using HTTPS | The AWS SDK for .NET now supports HTTPS for a CloudFront distribution (release notes).
The following example demonstrates how to specify a distribution to require HTTPS:
CloudFrontDistributionConfig distConfig = new CloudFrontDistributionConfig();
distConfig.WithEnabled(false);
distConfig.WithOrigin(config.DistributionConfig.Origin);
distConfig.WithCallerReference(config.DistributionConfig.CallerReference);
distConfig.WithRequiredProtocols(Protocol.https);
setRequest.WithDistributionConfig(distConfig);
setRequest.WithETag(config.ETag);
setRequest.WithId(distribution.Id);
SetDistributionConfigResponse setResponse = CFClient.SetDistributionConfig(setRequest);
|
| Support for Amazon S3 Bucket Policies |
Bucket Policies are Aspen policies set at S3 bucket resource level that
will participate in determining whether the given S3 operation is
allowed. They provide access control management at the bucket level for
both bucket resource and contained object resources. The following example demonstrates how to put a aspen policy on a particular bucket:
String aspenPolicy = "{ " +
"\"Version\":\"2008-10-17\", " +
"\"Statement\":[{ " +
" \"Sid\":\"AddPerm\", " +
" \"Effect\":\"Allow\", " +
" \"Principal\": { " +
" \"AWS\": \"*\" " +
" }, " +
" \"Action\":[\"s3:ReadObject\"], " +
" \"Resource\":[\"arn:aws:s3:::" + bucketName + "/*\"] " +
"}]} ";
PutBucketPolicyRequest policyRequest = new PutBucketPolicyRequest().WithBucketName(bucketName).WithAspenPolicy(aspenPolicy);
PutBucketPolicyResponse policyResponse = s3Client.PutBucketPolicy(policyRequest);
|
| New Timeout property in GetObjectRequest |
The AWS SDK for .NET now supports setting a timeout for getting objects
from Amazon S3. Timeout is set in milliseconds using the Timeout
property or the WithTimeout method on the GetObjectRequest object. The following example demonstrates how to specify a the timeout for a GetObjectRequest:
GetObjectRequest request = new GetObjectRequest();
request.WithBucketName("sdk-tests");
request.WithKey("ObjectToGet");
request.WithTimeout(1000);
GetObjectResponse response = s3Client.GetObject(request);
|
Supported API Versions
This release of the AWS SDK for .NET supports the following API versions:
| Service | API Version |
|---|---|
| Amazon EC2 | 2009-11-30 |
| Amazon S3 | 2006-03-01 |
| Amazon SimpleDB | 2009-04-15 |
| Amazon RDS | 2010-01-01 |
| Amazon CloudFront | 2010-06-01 |
| Amazon SQS | 2009-02-01 |
| Amazon Elastic MapReduce | 2009-03-31 |
| Amazon CloudWatch | 2009-05-15 |
| Elastic LoadBalancing | 2009-11-25 |
| Auto Scaling | 2009-05-15 |
| Amazon SNS | 2010-03-31 |
Known Issues
| Issue | Description |
|---|---|
| Installation Requires Administrator Privileges | The default install location is %PROGRAMFILES%, which on most computers is "c:\program files". In order to install files to the default location, the MSI must be run by an Administrator. If you don't have Administrator privileges on the machine, please change the install location to something like "c:\Documents and Settings\<you>\AWS SDK for .NET", and the install will complete successfully. If you are running on Vista, your personal folder is similar to "c:\users\<you>\". |
| Uninstalling the SDK produces "Unknown Publisher" message | On Windows Vista, uninstalling the MSI results in an "Unknown Publisher" dialog even though the installer is signed by Amazon Web Services. This is a known Windows Installer bug on Windows Vista, and is documented here: http://support.microsoft.com/kb/929467/en-us |