将 CreateKey 和 AWS SDK 结合使用 - AWS SDK 代码示例

AWS 文档 SDK 示例 GitHub 存储库中还有更多 AWS SDK 示例。

CreateKey 和 AWS SDK 结合使用

以下代码示例演示如何使用 CreateKey

Java
适用于 Java 的 SDK 2.x
注意

查看 GitHub,了解更多信息。在 AWS 代码示例存储库中查找完整示例,了解如何进行设置和运行。

/** * Creates a new API key with the specified name and restrictions. * * @param keyName the name of the API key to be created * @param mapArn the Amazon Resource Name (ARN) of the map resource to which the API key will be associated * @return a {@link CompletableFuture} that completes with the Amazon Resource Name (ARN) of the created API key, * or {@code null} if the operation failed */ public CompletableFuture<String> createKey(String keyName, String mapArn) { ApiKeyRestrictions keyRestrictions = ApiKeyRestrictions.builder() .allowActions("geo:GetMap*") .allowResources(mapArn) .build(); CreateKeyRequest request = CreateKeyRequest.builder() .keyName(keyName) .restrictions(keyRestrictions) .noExpiry(true) .build(); return getClient().createKey(request) .whenComplete((response, exception) -> { if (exception != null) { Throwable cause = exception.getCause(); if (cause instanceof AccessDeniedException) { throw new CompletionException("The request was denied because of insufficient access or permissions.", cause); } throw new CompletionException("Failed to create API key: " + exception.getMessage(), exception); } }) .thenApply(response -> response.keyArn()); // This will never return null if the response reaches here }
  • 有关 API 详细信息,请参阅《AWS SDK for Java 2.x API Reference》中的 CreateKey

Kotlin
适用于 Kotlin 的 SDK
注意

查看 GitHub,了解更多信息。在 AWS 代码示例存储库中查找完整示例,了解如何进行设置和运行。

/** * Creates a new API key with the specified name and restrictions. * * @param keyName the name of the API key to be created * @param mapArn the Amazon Resource Name (ARN) of the map resource to which the API key will be associated * @return the Amazon Resource Name (ARN) of the created API key */ suspend fun createKey(keyName: String, mapArn: String): String { val keyRestrictions = ApiKeyRestrictions { allowActions = listOf("geo:GetMap*") allowResources = listOf(mapArn) } val request = CreateKeyRequest { this.keyName = keyName this.restrictions = keyRestrictions noExpiry = true } LocationClient.fromEnvironment { region = "us-east-1" }.use { client -> val response = client.createKey(request) return response.keyArn } }
  • 有关 API 详细信息,请参阅《AWS SDK for Kotlin API Reference》中的 CreateKey