D'autres exemples de AWS SDK sont disponibles dans le référentiel AWS Doc SDK Examples GitHub .
Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Utilisation ListFindings avec un AWS SDK ou une CLI
Les exemples de code suivants illustrent comment utiliser ListFindings.
Les exemples d’actions sont des extraits de code de programmes de plus grande envergure et doivent être exécutés en contexte. Vous pouvez voir cette action en contexte dans l’exemple de code suivant :
- CLI
-
- AWS CLI
-
Pour répertorier les résultats
La commande list-findings suivante répertorie tous les résultats générés :
aws inspector list-findings
Sortie :
{
"findingArns": [
"arn:aws:inspector:us-west-2:123456789012:target/0-0kFIPusq/template/0-4r1V2mAw/run/0-MKkpXXPE/finding/0-HwPnsDm4",
"arn:aws:inspector:us-west-2:123456789012:target/0-0kFIPusq/template/0-4r1V2mAw/run/0-v5D6fI3v/finding/0-tyvmqBLy"
]
}
Pour plus d’informations, consultez Résultats Amazon Inspector dans le Guide Amazon Inspector.
- Java
-
- SDK pour Java 2.x
-
/**
* Lists all AWS Inspector findings of LOW severity asynchronously.
*
* @return CompletableFuture containing a List of finding ARNs.
* Returns an empty list if no LOW severity findings are found.
*/
public CompletableFuture<ArrayList<String>> listLowSeverityFindingsAsync() {
logger.info("Starting async LOW severity findings paginator…");
// Build a filter criteria for LOW severity.
StringFilter severityFilter = StringFilter.builder()
.value(Severity.LOW.toString())
.comparison(StringComparison.EQUALS)
.build();
FilterCriteria filterCriteria = FilterCriteria.builder()
.severity(Collections.singletonList(severityFilter))
.build();
// Build the request.
ListFindingsRequest request = ListFindingsRequest.builder()
.filterCriteria(filterCriteria)
.build();
ListFindingsPublisher paginator = getAsyncClient().listFindingsPaginator(request);
List<String> allArns = Collections.synchronizedList(new ArrayList<>());
return paginator.subscribe(response -> {
if (response.findings() != null && !response.findings().isEmpty()) {
response.findings().forEach(finding -> {
logger.info("Finding ARN: {}", finding.findingArn());
allArns.add(finding.findingArn());
});
} else {
logger.info("Page contained no findings.");
}
})
.thenRun(() -> logger.info("Successfully listed all LOW severity findings."))
.thenApply(v -> new ArrayList<>(allArns)) // Return list instead of a formatted string
.exceptionally(ex -> {
Throwable cause = ex.getCause() != null ? ex.getCause() : ex;
if (cause instanceof ValidationException ve) {
throw new CompletionException(
"Validation error listing LOW severity findings: %s".formatted(ve.getMessage()),
ve
);
}
throw new RuntimeException("Failed to list LOW severity findings", ex);
});
}