[{"data":1,"prerenderedAt":45},["ShallowReactive",2],{"repo-apigw-private-custom-domain-name":3},{"id":4,"title":5,"contributors":6,"date":8,"description":9,"diagram":10,"extension":11,"framework":12,"gitHub":14,"introBox":18,"language":23,"meta":25,"resources":26,"services":38,"simplicity":40,"stem":41,"type":42,"usecase":43,"__hash__":44},"repos\u002Frepos\u002Fapigw-private-custom-domain-name.json","Private API Gateway custom domains",[7],"content\u002Fcontributors\u002Fheeki-park.json","2023-02-08","Custom domain names for Private API Gateway endpoints.","\u002Fassets\u002Fimages\u002Frepos\u002Fapigw-private-custom-domain-name.png","json",[13],"AWS SAM",{"template":15},{"projectFolder":16,"repoURL":17},"apigw-private-custom-domain-name","https:\u002F\u002Fgithub.com\u002Faws-samples\u002Fserverless-samples",{"headline":9,"text":19},[20,21,22],"This repository implements a workaround solution as described in the related blog post. Multiregional implementation of this solution are available in resources links.","A user or application makes an API request to the fully qualified domain name (FQDN) of the custom domain name, in this example private.internal.example.com. We use a private hosted zone in association with the VPC. The CNAME resolves to the FQDN of the private load balancer, in this example internal-0123-abcd.elb.us-east-1.amazonaws.com. The load balancer terminates TLS with the ACM certificate for private.internal.example.com. For more details, refer to the documentation on private hosted zones.","The load balancer then re-initiates the TLS connection with a listener for TLS:443 for NLB or alternatively HTTPS:443 for ALB. The listener redirects to the IP addresses of the VPC endpoint for API Gateway, in this example at 10.0.110.74 and 10.0.120.81. The listener also has a TCP:443 health check for NLB and an HTTPS:443 health check for ALB. Note that ALB also requires matcher against HTTP 200 and 403. The load balancers then establishes a TLS connection to the VPC endpoint using the FQDN of the custom domain, allowing it to resolve to the regional custom domain name that we configured.",[24],"Python",{},{"headline":27,"bullets":28},"Additional resources",[29,32,35],{"text":30,"link":31},"Blog: Building resilient private APIs using Amazon API Gateway","https:\u002F\u002Faws.amazon.com\u002Fblogs\u002Fcompute\u002Fbuilding-resilient-private-apis-using-amazon-api-gateway\u002F",{"text":33,"link":34},"Blog: Enabling Private APIs with Custom Domain Names (Amazon API Gateway)","https:\u002F\u002Fgeorgemao.medium.com\u002Fenabling-private-apis-with-custom-domain-names-aws-api-gateway-df1b62b0ba7c",{"text":36,"link":37},"Multi-region implementation","https:\u002F\u002Fgithub.com\u002Faws-samples\u002Fserverless-samples\u002Ftree\u002Fmain\u002Fmultiregional-private-api\u002FREADME.md",[39],"apigw","300","repos\u002Fapigw-private-custom-domain-name","How To","Backend","MfmkIrcvvL7XVK_aIMZ1HelLWhQgR1ua8xn6kuZ0x0o",1792578864636]