网络安全:认证、授权与加密全解析
1. SSL认证
SSL通常被视为一种加密机制,但它也可用于身份验证。在Web服务器场景中,证书可向客户端证明服务器的真实性,因为第三方(如VeriSign)会对证书进行验证。然而,在Ruby中验证服务器证书并非易事。与浏览器不同,Ruby本身并不知道如何信任第三方对证书的验证,这需要程序员提供证书颁发机构的文件供Ruby使用。以下是一个示例代码:
require 'uri'
require 'net/https' # Use net/https, *not* net/http
uri = URI.parse(ARGV[0] || "https://mail.google.com")
http = Net::HTTP.new(uri.host, uri.port)
# Tell Net::HTTP that SSL is in use.
http.use_ssl = true
# Tell Net::HTTP that we want to validate certificates.
http.verify_mode = OpenSSL::SSL::VERIFY_PEER
# cacert.pem contains certificate authority information.
http.ca_file = File.join(File.dirname(__FILE__),
"cacert.pem")
http.start do
puts http.get("/")
end
从代码中可以看出,需要告知 Net::HTTP 使用S
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



