-
Notifications
You must be signed in to change notification settings - Fork 33
Expand file tree
/
Copy pathTLSConfiguration.swift
More file actions
39 lines (31 loc) · 986 Bytes
/
TLSConfiguration.swift
File metadata and controls
39 lines (31 loc) · 986 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
//
// Copyright Amazon.com Inc. or its affiliates.
// All Rights Reserved.
//
// SPDX-License-Identifier: Apache-2.0
//
/**
* Configuration settings about TLS set up.
* All settings are optional.
* Not specifying them will use the SDK defaults
*/
public protocol TLSConfiguration: Sendable {
// Optional path to a PEM certificate
var certificate: String? { get set }
// Optional path to certificate directory
var certificateDir: String? { get set }
// Optional path to a PEM format private key
var privateKey: String? { get set }
// Optional path to PKCS #12 certificate , in PEM format
var pkcs12Path: String? { get set }
// Optional PKCS#12 password
var pkcs12Password: String? { get set }
// Optional Minimum TLS Version
var minimumTLSVersion: TLSVersion? { get set }
}
public enum TLSVersion: String, Sendable {
case tls10 = "TLSv1_0"
case tls11 = "TLSv1_1"
case tls12 = "TLSv1_2"
case tls13 = "TLSv1_3"
}