Release: AWS SDK for .NET 1.0.12

Release Notes>.NET>Release: AWS SDK for .NET 1.0.12
Added support for Identity and Access Management (IAM), Access Control Policies, CloudFront Default Root Objects, log4net integration and EMR utility methods.

Details

Submitted By: Norm@AWS
Release Date: September 3, 2010 12:00 AM GMT
Created On: September 3, 2010 5:28 PM GMT
Last Updated: October 5, 2010 8:49 PM GMT

Important Changes

Change Description
New dependency: Newtonsoft.Json.Net20 The Newtonsoft.Json.Net20 library is installed with the AWS SDK for .NET. Developers will need to include the library with their projects.
Amazon S3 Property Deprecation The AspenPolicy property of GetBucketPolicyResponse and PutBucketPolicyRequest has been deprecated and will be removed in a subsequent release. Use the Policy property instead.

What's New?

ChangeDescription
Identity and Access Management (IAM) Developers can now take advantage of Amazon Identity and Access Management, enabling Enterprises to manage multiple Amazon Web Services accounts and control access to Amazon Web Services in a convenient manner. Using Amazon Identity and Access Management, developers can provision and group Amazon Web Services accounts, enforce access policies and administer accounts and policies from a central location.

    iam.CreateUser(new CreateUserRequest()
       .WithUserName("jlebowski")
       .WithPath("/Corporate/Marketing/"));
   
iam.CreateGroup(new CreateGroupRequest() .WithGroupName("marketing"));
iam.AddUserToGroup(new AddUserToGroupRequest() .WithGroupName("marketing") .WithUserName("jlebowski"));
Support for Access Control Policies Developers can now construct access control policy documents with an easy-to-use collection of classes.

     // Allow all users to read objects in a bucket
     Policy policy = new Policy("myPolicy123");
     policy.WithStatements(new Statement(Statement.StatementEffect.Allow)
        .WithPrincipals(Principal.AllUsers)
        .WithActionIdentifiers(S3ActionIdentifiers.GetObject)
        .WithResources(ResourceFactory.NewS3ObjectResource("myBucket", "*")));
     
Integration with log4net in Amazon S3 and IAM Improved diagnostic information is available for Amazon S3 and IAM users who are also using log4net.
Support for CloudFront Default Root Object Developers can now set a default root object for any of their Amazon CloudFront distributions to serve a specific document for requests to the site's root URL.

  CreateDistributionResponse response =
    cf.CreateDistribution(new CreateDistributionRequest()
      .WithDistributionConfig(new CloudFrontDistributionConfig()
          .WithDefaultRootObject("index.html")
          .WithEnabled(true)
          .WithLogging("logBucket", "site-log")
          .WithOrigin("siteOrigin")));
  
Elastic Map Reduce StepFactory Utility The Amazon Elastic Map Reduce client includes a new StepFactory class to help make constructing EMR job flows easier. The following example creates an interactive Hive job flow with debugging enabled:

    StepFactory stepFactory = new StepFactory();

    StepConfig enableDebugging = new StepConfig()
        .WithName("Enable Debugging")
        .WithActionOnFailure("TERMINATE_JOB_FLOW")
        .WithHadoopJarStep(stepFactory.NewEnableDebuggingStep());

    StepConfig installHive = new StepConfig()
        .WithName("Install Hive")
        .WithActionOnFailure("TERMINATE_JOB_FLOW")
        .WithHadoopJarStep(stepFactory.NewInstallHiveStep());

    RunJobFlowRequest request = new RunJobFlowRequest()
        .WithName("Hive Interactive")
        .WithSteps(enableDebugging, installHive)
        .WithLogUri("s3://log-bucket/")
        .WithInstances(new JobFlowInstancesConfig()
            .WithEc2KeyName("keypair")
            .WithHadoopVersion("0.20")
            .WithInstanceCount(5)
            .WithKeepJobFlowAliveWhenNoSteps(true)
            .WithMasterInstanceType("m1.small")
            .WithSlaveInstanceType("m1.small"));

    RunJobFlowResponse response = emr.RunJobFlow(request);
  
Bug Fixes S3: URLEncoding problem with keys that contained '+' in the name
SQS: Removed Attributes collection on SendMessageRequest. It had no effect and was confusing.

Supported API Versions

This release of the AWS SDK for .NET supports the following API versions:

Service API Version
Amazon EC2 2010-06-15
Amazon S3 2006-03-01
Amazon SimpleDB 2009-04-15
Amazon RDS 2010-01-01
Amazon CloudFront 2009-12-15
Amazon SQS 2009-02-01
Amazon Elastic MapReduce 2009-03-31
Amazon CloudWatch 2009-05-15
Amazon Elastic LoadBalancing 2009-11-25
Amazon Auto Scaling 2009-05-15
Amazon Simple Notification Service 2010-03-31
Amazon Identity and Access Management 2010-05-08

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

Download the AWS SDK for .NET from http://aws.amazon.com/sdkfornet/.

©2014, Amazon Web Services, Inc. or its affiliates. All rights reserved.