Ci sono altri AWS SDK esempi disponibili nel repository AWS Doc SDK Examples GitHub .
Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Utilizzare GetRepositoryPolicy
con un o AWS SDK CLI
I seguenti esempi di codice mostrano come utilizzareGetRepositoryPolicy
.
Gli esempi di operazioni sono estratti di codice da programmi più grandi e devono essere eseguiti nel contesto. È possibile visualizzare questa operazione nel contesto nel seguente esempio di codice:
- CLI
-
- AWS CLI
-
Per recuperare la politica di repository per un repository
L'get-repository-policy
esempio seguente visualizza i dettagli sulla politica di repository per il repository. cluster-autoscaler
aws ecr get-repository-policy \
--repository-name cluster-autoscaler
Output:
{
"registryId": "012345678910",
"repositoryName": "cluster-autoscaler",
"policyText": "{\n \"Version\" : \"2008-10-17\",\n \"Statement\" : [ {\n \"Sid\" : \"allow public pull\",\n \"Effect\" : \"Allow\",\n \"Principal\" : \"*\",\n \"Action\" : [ \"ecr:BatchCheckLayerAvailability\", \"ecr:BatchGetImage\", \"ecr:GetDownloadUrlForLayer\" ]\n } ]\n}"
}
- Java
-
- SDKper Java 2.x
-
/**
* Gets the repository policy for the specified repository.
*
* @param repoName the name of the repository.
* @throws EcrException if an AWS error occurs while getting the repository policy.
*/
public String getRepoPolicy(String repoName) {
if (repoName == null || repoName.isEmpty()) {
throw new IllegalArgumentException("Repository name cannot be null or empty");
}
GetRepositoryPolicyRequest getRepositoryPolicyRequest = GetRepositoryPolicyRequest.builder()
.repositoryName(repoName)
.build();
CompletableFuture<GetRepositoryPolicyResponse> response = getAsyncClient().getRepositoryPolicy(getRepositoryPolicyRequest);
response.whenComplete((resp, ex) -> {
if (resp != null) {
System.out.println("Repository policy retrieved successfully.");
} else {
if (ex.getCause() instanceof EcrException) {
throw (EcrException) ex.getCause();
} else {
String errorMessage = "Unexpected error occurred: " + ex.getMessage();
throw new RuntimeException(errorMessage, ex);
}
}
});
GetRepositoryPolicyResponse result = response.join();
return result != null ? result.policyText() : null;
}
- Kotlin
-
- SDKper Kotlin
-
/**
* Gets the repository policy for the specified repository.
*
* @param repoName the name of the repository.
*/
suspend fun getRepoPolicy(repoName: String?): String? {
require(!(repoName == null || repoName.isEmpty())) { "Repository name cannot be null or empty" }
// Create the request
val getRepositoryPolicyRequest =
GetRepositoryPolicyRequest {
repositoryName = repoName
}
EcrClient { region = "us-east-1" }.use { ecrClient ->
val response = ecrClient.getRepositoryPolicy(getRepositoryPolicyRequest)
val responseText = response.policyText
return responseText
}
}