ec2列出我的快照和所有者ID

时间:2011-06-08 05:53:52

标签: java amazon-ec2

如果我调用AmazonEC2 Java接口的describeSnapshots(),我会获得大量快照,如文档中所述,因为它包含所有可见的快照。

但是要获取我的快照列表,应该很容易使用API​​,但这对我来说并不明显。我试图将DescribeSnapshotsRequests对象传递给describeSnapshots()

DescribeSnapshotsRequest req = new DescribeSnapShotRequests();
List<String> ownerId = new ArrayList<String>();
ownerId.add("....");
req.setOwnerIds(ownerId);
DescribeSnapshotsResult res = ec2.describeSnapshots(req);

然而,要获取我的用户ID,我打印了所有快照的用户ID并手动识别我的,复制了该用户ID,并在源代码中使用。

我希望有更好的方法来列出我的快照,谁都知道呢?

2 个答案:

答案 0 :(得分:6)

试试这个

 req.setOwnerIds(Arrays.<String>asList("self"));

像我这样的东西可以用来描述图像。

答案 1 :(得分:0)

https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-snapshots.html

  

如果您使用OwnerIds选项指定一个或多个快照所有者,   仅来自指定所有者且您有权访问的快照   返回。结果可以包含以下内容的AWS账户ID   指定的所有者,亚马逊拥有的快照的亚马逊或自我的   您拥有的快照。

ec2.describeSnapshots(new DescribeSnapshotsRequest().withOwnerIds("self"));