ServerValidationPolicy
@frozen
public enum ServerValidationPolicy
Realm 客户端应如何验证服务器的身份以实现安全连接。
默认情况下,通过 HTTPS 连接到 Atlas App Services 时,Realm 将使用系统信任存储区和根证书来验证服务器的 HTTPS 证书。 为了提供针对中间人 (MITM) 攻击和类似漏洞的额外保护,您可以固定证书或公钥,并拒绝所有其他证书或公钥,即使它们是由受信任的 CA 签名的。
-
不执行验证并接受可能无效的证书。
警告
请勿在生产环境中使用此选项。声明
Swift
case none
-
使用基于系统范围 CA存储的默认服务器信任评估。 任何由受信任的 CA 签署的证书都将被接受。
声明
Swift
case system
-
使用特定的固定证书来验证服务器名称。
仅当其中一个服务器证书与给定本地路径中存储的证书匹配并且该证书具有有效的信任链时,这才会连接到服务器。
在 macOS 上,证书文件可能采用 SecItemImport() 支持的任何格式,包括 PEM 和 .cer (有关可能格式的完整列表,请参阅 SecExternalFormat)。 在 iOS 和其他平台上,仅 DER .cer 文件受支持。
声明
Swift
case pinCertificate(path: URL)