Hay más ejemplos de AWS SDK disponibles en el GitHub repositorio de ejemplos de AWS Doc SDK.
Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
EnableÚselo con un AWS SDK
En el siguiente ejemplo de código, se muestra cómo utilizar Enable.
Los ejemplos de acciones son extractos de código de programas más grandes y deben ejecutarse en contexto. Puede ver esta acción en contexto en el siguiente ejemplo 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();
});
}