Go to the documentation of this file.
17 #ifndef GRPCPP_SECURITY_TLS_CERTIFICATE_PROVIDER_H
18 #define GRPCPP_SECURITY_TLS_CERTIFICATE_PROVIDER_H
34 namespace experimental {
60 std::variant<std::string, std::shared_ptr<PrivateKeySigner>>
private_key;
71 const std::string& root_certificate,
72 const std::vector<IdentityKeyCertPair>& identity_key_cert_pairs);
78 const std::vector<IdentityKeyCertPair>& identity_key_cert_pairs)
122 const std::string& identity_certificate_path,
123 const std::string& root_cert_path,
124 const std::string& spiffe_bundle_map_path,
125 unsigned int refresh_interval_sec);
128 const std::string& identity_certificate_path,
129 unsigned int refresh_interval_sec)
131 identity_certificate_path,
"",
"",
132 refresh_interval_sec) {}
135 unsigned int refresh_interval_sec)
137 refresh_interval_sec) {}
139 const std::string& identity_certificate_path,
140 const std::string& root_cert_path,
141 unsigned int refresh_interval_sec)
143 private_key_path, identity_certificate_path, root_cert_path,
"",
144 refresh_interval_sec) {}
177 absl::Status UpdateRoot(
const std::string& root_certificate);
179 std::vector<IdentityKeyCertPair> identity_key_cert_pairs);
181 std::vector<IdentityKeyOrSignerCertPair>
182 identity_key_or_signer_cert_pairs);
198 #endif // GRPCPP_SECURITY_TLS_CERTIFICATE_PROVIDER_H
Definition: tls_certificate_provider.h:110
An Alarm posts the user-provided tag to its associated completion queue or invokes the user-provided ...
Definition: alarm.h:33
FileWatcherCertificateProvider(const std::string &private_key_path, const std::string &identity_certificate_path, unsigned int refresh_interval_sec)
Definition: tls_certificate_provider.h:127
struct grpc_tls_certificate_provider grpc_tls_certificate_provider
— TLS channel/server credentials — It is used for experimental purpose for now and subject to change.
Definition: credentials.h:609
StaticDataCertificateProvider(const std::vector< IdentityKeyCertPair > &identity_key_cert_pairs)
Definition: tls_certificate_provider.h:77
FileWatcherCertificateProvider(const std::string &root_cert_path, unsigned int refresh_interval_sec)
Definition: tls_certificate_provider.h:134
std::string certificate_chain
Definition: tls_certificate_provider.h:51
grpc_tls_certificate_provider * c_provider() override
Definition: tls_certificate_provider.h:83
Definition: tls_certificate_provider.h:48
Definition: tls_certificate_provider.h:39
Definition: tls_certificate_provider.h:164
std::string private_key
Definition: tls_certificate_provider.h:50
grpc_tls_certificate_provider * c_provider() override
Definition: tls_certificate_provider.h:171
grpc_tls_certificate_provider * c_provider() override
Definition: tls_certificate_provider.h:148
Definition: tls_certificate_provider.h:67
FileWatcherCertificateProvider(const std::string &private_key_path, const std::string &identity_certificate_path, const std::string &root_cert_path, unsigned int refresh_interval_sec)
Definition: tls_certificate_provider.h:138
StaticDataCertificateProvider(const std::string &root_certificate)
Definition: tls_certificate_provider.h:74
std::variant< std::string, std::shared_ptr< PrivateKeySigner > > private_key
Definition: tls_certificate_provider.h:60
Definition: tls_certificate_provider.h:59
std::string certificate_chain
Definition: tls_certificate_provider.h:61
::absl::Status Status
Definition: config_protobuf.h:107