Commit 1024f29
authored
Type-safe Security Configuration (#88)
* Type-safe Security Configurations
> Adds some of the missing properties from #46.
Motivation:
We were lacking some of the security protocol configuration options and
want to provide them in a type-safe manner.
Modifications:
* add Kerberos support
* add OAuthBearer support
* Created a new file `KafkaConfiguration+Security.swift`
* add `public struct` `SSLConfiguration`
* add `public struct` `SASLMechanism`
* add `public struct` `KerberosConfiguration`
* add `public struct` `OAuthBearerMethod`
* add `public struct` `SecurityProtocol`
* integrate `KafkaConfiguration.SSLOptions` in new types
* integrate `KafkaConfiguration.SASLOptions` in new types
* Fix failing test
* Changes David
Modifications:
* go from `KafkaConfiguration.Key` type into more specific types:
* `LeafAndIntermediates` to extract the public Key
* `PrivateKey`
* `RootCertificate`
* `RootCertificate`: add two new options
* `probe` (default): probe list of standard paths and make first
certificate found root default root certificate location path
* `disableBrokerVerification`: disable broker verification entirely
* `KafkaConfiguration+Security`:
* turn `static func`s without parameters into `static let`s for our
enum-like `public structs`
* Review David
Modifications:
* add `public init` to `KafkaConfiguration.SASLMechanism.KerberosConfiguration`1 parent 0dc11d6 commit 1024f29
File tree
5 files changed
+543
-124
lines changed- Sources/SwiftKafka/Configuration
- Tests/SwiftKafkaTests
5 files changed
+543
-124
lines changed
0 commit comments