0

Eucalyptus の開発に Amazon AWS SDK を使用しようとしていますが、常にアクセスが拒否されます:public class App {

public static  AmazonEC2 ec2;
public static AmazonS3 s3;
public static  AmazonIdentityManagement identityManagement;
private static String ACCESS_KEY;
private static String SECRET_KEY;
private static String IDENTITY_END_POINT;

public static void init(){
    ACCESS_KEY="myaccesskey";
        SECRET_KEY="mysecretkey";
    IDENTITY_END_POINT="http://192.168.1.101:8773/services/Euare";
    AWSCredentials myCredential = new BasicAWSCredentials(ACCESS_KEY,SECRET_KEY);
    //ec2 = new AmazonEC2Client(myCredential);
   s3 = new AmazonS3Client(myCredential);
   //ec2.setEndpoint(EC2_END_POINT);    
   s3.setEndpoint(Walrus_END_POINT);
    identityManagement=new AmazonIdentityManagementClient(myCredential);
    identityManagement.setEndpoint(IDENTITY_END_POINT);  
  }
public static void main(String[] args) {
    // TODO Auto-generated method stub

    init();

     List<Bucket> buckets = s3.listBuckets();

        System.out.println("List of all buckets in your cloud:\n");
        for (Bucket bucket : buckets) {
            System.out.println(bucket.getName()+"\n");
   }

       CreateUserRequest createUserRequest=new        CreateUserRequest().withPath("/").withUserName("summer");
CreateUserResult createUserResult=identityManagement.createUser(createUserRequest); 

それは私が得るエラーです:

スレッド「メイン」ステータス コードの例外: 404、AWS サービス: AmazonIdentityManagement、AWS リクエスト ID: null、AWS エラー コード: null、AWS エラー メッセージ: null at com.amazonaws.http.AmazonHttpClient.handleErrorResponse(AmazonHttpClient.java:614) com.amazonaws.http.AmazonHttpClient.executeHelper(AmazonHttpClient.java:312) com.amazonaws.http.AmazonHttpClient.execute(AmazonHttpClient.java:165) com.amazonaws.services.identitymanagement.AmazonIdentityManagementClient.invoke(AmazonIdentityManagementClient.java) :3130) com.amazonaws.services.identitymanagement.AmazonIdentityManagementClient.getUser(AmazonIdentityManagementClient.java:1201) で com.test2.Group.main(Group.java:107) で

4

1 に答える 1

0

IAM API の使用時に 404 が発生する原因がわかりません。投稿したコードが、投稿された例外と一致していないようです。

使用している Eucalyptus と AWS Java SDK のバージョンはわかりませんが、一部のバージョンではエンドポイント URL に / を追加して、AWS Java SDK が署名を正しく計算できるようにする必要があります (IAM など)。

"http://$EXAMLE:8773/services/Euare/"

ただし、これが404の問題を引き起こすとは思いません。

Eucalyptus で AWS Java SDK を使用する方法の詳細については、こちらをご覧ください。

https://github.com/eucalyptus/eucalyptus/wiki/HOWTO-Use-AWS-Java-SDK-with-Eucalyptus

Eucalyptus を使用した AWS Java SDK の単体テストは次のとおりです。

https://github.com/eucalyptus/eutester/tree/testing/eutester4j/com/eucalyptus/tests/awssdk

これには、IAM/STS サービスの一部が含まれます。

于 2013-07-26T17:19:28.507 に答える