【问题标题】:Add ssl to rest api将ssl添加到rest api
【发布时间】:2020-11-19 11:53:28
【问题描述】:
我有一个在 aws ec2 实例上运行的 express js 应用程序,它充当我的应用程序的 rest api。如果我想为我的 expressjs api 添加 ssl 认证,我应该怎么做?
1)我是否需要获得具有 ssl 认证的域并将其映射到我的 ec2 ip 地址?
2)或者它足以将aws API网关放在我的ec2实例前面,使用ACM的免费ssl并获得一个没有ssl的域?
3)或者在acm中获得一个带有ssl和ssl的域?
(对理解域和 ssl 有点困惑,任何帮助将不胜感激)
提前致谢。
【问题讨论】:
标签:
node.js
amazon-web-services
express
amazon-ec2
rest
【解决方案1】:
这种用例的默认模式(假设您不想管理域 + 证书)是将您的 EC2 实例置于与 ACM 集成的服务之后,例如 Elastic Load Balancing (ELB) 或Amazon CloudFront 分配。
API Gateway 在为您提供 SSL 证书的同时,还会带来许多您仍需付费购买的其他功能。
Example
编辑:
原始问题的格式不正确,我错过了选项 3)。
如果您要获得一个域,那么您还有其他选择,例如使用 Route53 管理它并将您的流量引导到 EC2,或者使用域注册商执行相同的操作。这假定 EC2 具有允许您对其进行寻址的静态 IP 地址。此时,您可以通过 AWS ACM 或通过其他方式直接在 EC2 上获取 SSL 证书(即@987654322@)。除了价格之外,两者的区别在于,一个需要您管理自己的证书,而另一个是 AWS 托管服务。