2017-06-29 3 views
1

Der folgende Code erstellt einen neuen API KEY in AWS API Gateway. Nur zum Spaß, ich bekomme auch einen bestehenden Nutzungsplan namens "Basic" mit einer ID von "1234"AWS API-Gateway JAVA SDK Hinzufügen eines Nutzungsplans zum API-Schlüssel

Für das Leben von mir kann ich nicht herausfinden, wie ich meine neu erstellte API Key und fügen Sie die vorhandene Nutzung plane es. Dies kann manuell im Webportal mit der Schaltfläche "Zum Nutzungsplan hinzufügen" erfolgen, ich möchte jedoch meinen neuen Benutzer zu einem freien Plan hinzufügen.

BasicAWSCredentials awsCreds = new BasicAWSCredentials(aws_id, aws_key); 

      apiGateway = AmazonApiGatewayClientBuilder.standard() 
        .withCredentials(new AWSStaticCredentialsProvider(awsCreds)) 
        .withRegion(Regions.US_EAST_1).build(); 

      CreateApiKeyRequest createApiKeyRequest = new CreateApiKeyRequest(); 
      createApiKeyRequest.setName("awesome company); 
      createApiKeyRequest.setEnabled(true); 
      createApiKeyRequest.setCustomerId("someid"); 

      CreateApiKeyResult result = apiGateway.createApiKey(createApiKeyRequest); 

      GetUsagePlanRequest getUsagePlanRequest = new GetUsagePlanRequest(); 
      getUsagePlanRequest.setUsagePlanId("1234"); 
      GetUsagePlanResult getUsagePlanResult = apiGateway.getUsagePlan(getUsagePlanRequest); 

Alle AWS SDK-Experten wissen, wie man einen Nutzungsplan mit einem API-Schlüssel verbindet?

Antwort

0

Hier ist die Lösung zu meinem Beitrag - der Schlüsseltyp "API_KEY" ist nirgendwo dokumentiert, ich fand es in einigen zufälligen Python-Beispiel:/Dies erstellt einen neuen Benutzer mit einem API-Schlüssel und fügt sie zu einem Nutzungsplan hinzu mit dem api Gateway java sdk

BasicAWSCredentials awsCreds = new BasicAWSCredentials(aws_id, aws_key); 

      apiGateway = AmazonApiGatewayClientBuilder.standard() 
        .withCredentials(new AWSStaticCredentialsProvider(awsCreds)) 
        .withRegion(Regions.US_EAST_1).build(); 

      CreateApiKeyRequest createApiKeyRequest = new CreateApiKeyRequest(); 
      createApiKeyRequest.setName("My awesome new user"); 
      createApiKeyRequest.setEnabled(true); 
      createApiKeyRequest.setCustomerId(UUID.randomUUID().toString()); 


      CreateApiKeyResult result = apiGateway.createApiKey(createApiKeyRequest); 

      GetUsagePlanRequest getUsagePlanRequest = new GetUsagePlanRequest(); 
      getUsagePlanRequest.setUsagePlanId(BASIC_USAGE_PLAN_ID); 

      CreateUsagePlanKeyRequest createUsagePlanKeyRequest = new CreateUsagePlanKeyRequest() 
        .withUsagePlanId(BASIC_USAGE_PLAN_ID); 

      createUsagePlanKeyRequest.setKeyId(result.getId()); 
      createUsagePlanKeyRequest.setKeyType("API_KEY"); 
      apiGateway.createUsagePlanKey(createUsagePlanKeyRequest); 
Verwandte Themen