使用 C# 和 AWS 证书保护 WebSocket 服务器
Secure WebSocket Server with C# and AWS Certificates
我正在尝试用 C# 编写一个安全的 websocket (WSS) 服务器。我从使用 TcpClient 对象的不安全套接字开始,但假设我需要使用 SslStream 作为安全版本。我知道我需要使用 AuthenticateAsServer()
添加证书,并且使用虚拟证书文件非常简单。
但是,我正在使用的 Web 应用程序使用来自 AWS 的 HTTPS 证书,理想情况下,我也想将其用于服务器,但我不知道如何从AWS 将由 SslStream 使用(或者甚至初始化为 X509Certificate 对象)。
甚至可以以这种方式使用 AWS 证书吗?如果是这样,如何?
不,我不认为这是可能的,因为来自 AWS Certificate Manager 的免费证书似乎受到严格控制:
With AWS Certificate Manager, you can quickly request a certificate,
deploy it on ACM-integrated AWS resources, such as Elastic Load
Balancers, Amazon CloudFront distributions, and APIs on API Gateway,
and let AWS Certificate Manager handle certificate renewals
据我所知,AWS 可以创建证书并为您管理它们,但只有当它们被插入到它们 运行 的附加服务(外部服务,如负载均衡器、网关等)时。您不能在自己的代码中使用它们。
我正在尝试用 C# 编写一个安全的 websocket (WSS) 服务器。我从使用 TcpClient 对象的不安全套接字开始,但假设我需要使用 SslStream 作为安全版本。我知道我需要使用 AuthenticateAsServer()
添加证书,并且使用虚拟证书文件非常简单。
但是,我正在使用的 Web 应用程序使用来自 AWS 的 HTTPS 证书,理想情况下,我也想将其用于服务器,但我不知道如何从AWS 将由 SslStream 使用(或者甚至初始化为 X509Certificate 对象)。
甚至可以以这种方式使用 AWS 证书吗?如果是这样,如何?
不,我不认为这是可能的,因为来自 AWS Certificate Manager 的免费证书似乎受到严格控制:
With AWS Certificate Manager, you can quickly request a certificate, deploy it on ACM-integrated AWS resources, such as Elastic Load Balancers, Amazon CloudFront distributions, and APIs on API Gateway, and let AWS Certificate Manager handle certificate renewals
据我所知,AWS 可以创建证书并为您管理它们,但只有当它们被插入到它们 运行 的附加服务(外部服务,如负载均衡器、网关等)时。您不能在自己的代码中使用它们。