AWS Amplify 在 Spring Boot 后端为 https 使用 ssl 证书

3r1*_*r1c 5 ssl https amazon-web-services aws-certificate-manager aws-amplify

我在 aws amplify 中创建了一个前端,并使用路由 53 在 amplify 上创建了一个自定义域。然后我创建了一个子域,例如 api.domain.com 用于我的 Spring Boot 后端 rest api。子域仅使用 http。要将其与 https 一起使用,我需要指定:

server.ssl.key-store、server.ssl.key-store-password 和 server.ssl.keyAlias

在文档中,我发现了以下提示,但我无法访问 Amazon Certificate Manager (ACM) 上的证书:AWS Amplify Console 在所有页面上生成免费的 HTTPS 证书并在所有 Route53 托管域上自动激活它。SSL 证书由 Amazon Certificate Manager 生成并支持通配符域。ACM 处理为基于 AWS 的网站和应用程序创建和管理公共 SSL/TLS 证书的复杂性。使用通配符选项,主域和所有子域都由一个证书覆盖。

那么问题来了,如何获取我需要在spring boot中指定的信息呢?

Mar*_*cin 4

根据评论。

ACM 证书只能在负载均衡器、API 网关和 CloudFront 分配上使用。它们不能在 EC2 实例上使用。

有两种方法可以解决此问题:

  • 在您的 EC2 实例、CloudFront 分配或通过 API 网关代理您的 API 之前添加负载均衡器。在这些 AWS 服务上,您只需安装 ACM 证书即可。
  • 在实例本身上设置 SSL 证书。为此,您必须获得第三方证书。一个流行的选择是https://letsencrypt.org/,它提供免费的公共证书。