Há mais exemplos de AWS SDK disponíveis no repositório AWS Doc SDK Examples GitHub .
As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Use Enable com um AWS SDK
O código de exemplo a seguir mostra como usar Enable.
Exemplos de ações são trechos de código de programas maiores e devem ser executados em contexto. É possível ver essa ação em contexto no seguinte exemplo de código:
- Java
-
- SDK para Java 2.x
-
/**
* Enables AWS Inspector for the provided account(s) and default resource types.
*
* @param accountIds Optional list of AWS account IDs.
*/
public CompletableFuture<String> enableInspectorAsync(List<String> accountIds) {
// The resource types to enable.
List<ResourceScanType> resourceTypes = List.of(
ResourceScanType.EC2,
ResourceScanType.ECR,
ResourceScanType.LAMBDA,
ResourceScanType.LAMBDA_CODE
);
// Build the request.
EnableRequest.Builder requestBuilder = EnableRequest.builder()
.resourceTypes(resourceTypes);
if (accountIds != null && !accountIds.isEmpty()) {
requestBuilder.accountIds(accountIds);
}
EnableRequest request = requestBuilder.build();
return getAsyncClient().enable(request)
.whenComplete((response, exception) -> {
if (exception != null) {
Throwable cause = exception.getCause();
if (cause instanceof ValidationException) {
throw new CompletionException(
"Inspector may already be enabled for this account: %s".formatted(cause.getMessage()),
cause
);
}
if (cause instanceof Inspector2Exception) {
Inspector2Exception e = (Inspector2Exception) cause;
throw new CompletionException(
"AWS Inspector2 service error: %s".formatted(e.awsErrorDetails().errorMessage()),
cause
);
}
throw new CompletionException(
"Failed to enable Inspector: %s".formatted(exception.getMessage()),
exception
);
}
})
.thenApply(response -> {
StringBuilder summary = new StringBuilder("Enable results:\n");
if (response.accounts() == null || response.accounts().isEmpty()) {
summary.append("Inspector may already be enabled for all target accounts.");
return summary.toString();
}
for (Account account : response.accounts()) {
String accountId = account.accountId() != null ? account.accountId() : "Unknown";
String status = account.status() != null ? account.statusAsString() : "Unknown";
summary.append(" • Account: ").append(accountId)
.append(" → Status: ").append(status).append("\n");
}
return summary.toString();
});
}