如果我调用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,并在源代码中使用。
我希望有更好的方法来列出我的快照,谁都知道呢?
答案 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"));