Protect AWS Appsync APIs end point from public internet, restrict it to be accessible from Service deployed inside vpc

0

I have AWS Appsync graph QL end point, which is intended to be a backend service only. It is not meant to be exposed to the public internet. How to protect the end point to be used by another back end service deployed in vpc and external facing AWs Appsync instance ? Any reference articles or leads will be super helpful. Thanks in advance.

3 Risposte
2
Risposta accettata

For your particular use case, the most straightforward option would be to use AWS_IAM authorization:

  • create a role, allowing appsync:GraphQL action on the GraphQL API resource (or subset of operations)
  • associate backend service with that role, so that it can sign all GraphQL requests with SigV4
  • configure GraphQL API to use AWS_IAM security

This will require all clients to attach a valid SigV4 signature to all client requests.

If you want to lockdown API endpoint access even further and reject connection requests from unauthorized ip ranges, you might want to consider adding WAF integration and building WAF rules to allow connections from a predefined ip address range only.

AWS
con risposta 2 anni fa
1

Great question!

Check out https://docs.aws.amazon.com/appsync/latest/devguide/security-authz.html on how to secure AWS AppSync.

Specifically, you can configure 5 different types of authorization (API Key, AWS Lambda, AWS IAM, OpenID Connect, or Amazon Cognito User Pools).

You could also use WAF to protect your AppSync API: https://docs.aws.amazon.com/appsync/latest/devguide/WAF-Integration.html

More information about AppSync Security here: https://docs.aws.amazon.com/appsync/latest/devguide/security.html

jsonc
con risposta 2 anni fa
0
AWS
con risposta 10 mesi fa

Accesso non effettuato. Accedi per postare una risposta.

Una buona risposta soddisfa chiaramente la domanda, fornisce un feedback costruttivo e incoraggia la crescita professionale del richiedente.

Linee guida per rispondere alle domande