Go to the documentation of this file.
19 #ifndef GRPCPP_SECURITY_TLS_CREDENTIALS_OPTIONS_H
20 #define GRPCPP_SECURITY_TLS_CREDENTIALS_OPTIONS_H
40 namespace experimental {
54 return pem_key_cert_pair_list_;
69 std::vector<PemKeyCertPair> pem_key_cert_pair_list_;
70 std::string pem_root_certs_;
102 std::vector<TlsKeyMaterialsConfig::PemKeyCertPair>
103 pem_key_cert_pair_list);
105 const std::shared_ptr<TlsKeyMaterialsConfig>& key_materials_config);
133 credential_reload_interface);
137 if (credential_reload_interface_ ==
nullptr) {
139 if (arg !=
nullptr) {
142 "the interface of the credential reload config is nullptr");
146 return credential_reload_interface_->Schedule(arg);
150 if (credential_reload_interface_ ==
nullptr) {
152 if (arg !=
nullptr) {
155 "the interface of the credential reload config is nullptr");
159 credential_reload_interface_->Cancel(arg);
167 std::shared_ptr<TlsCredentialReloadInterface> credential_reload_interface_;
232 std::shared_ptr<TlsServerAuthorizationCheckInterface>
233 server_authorization_check_interface);
237 if (server_authorization_check_interface_ ==
nullptr) {
239 if (arg !=
nullptr) {
242 "the interface of the server authorization check config is "
247 return server_authorization_check_interface_->Schedule(arg);
251 if (server_authorization_check_interface_ ==
nullptr) {
253 if (arg !=
nullptr) {
256 "the interface of the server authorization check config is "
261 server_authorization_check_interface_->Cancel(arg);
271 std::shared_ptr<TlsServerAuthorizationCheckInterface>
272 server_authorization_check_interface_;
286 std::shared_ptr<TlsServerAuthorizationCheckConfig>
301 std::shared_ptr<TlsServerAuthorizationCheckConfig>
307 return cert_request_type_;
310 return server_verification_option_;
313 return key_materials_config_;
316 return credential_reload_config_;
318 std::shared_ptr<TlsServerAuthorizationCheckConfig>
320 return server_authorization_check_config_;
323 return c_credentials_options_;
335 std::shared_ptr<TlsKeyMaterialsConfig> key_materials_config_;
336 std::shared_ptr<TlsCredentialReloadConfig> credential_reload_config_;
337 std::shared_ptr<TlsServerAuthorizationCheckConfig>
338 server_authorization_check_config_;
345 #endif // GRPCPP_SECURITY_TLS_CREDENTIALS_OPTIONS_H
void set_status(grpc_ssl_certificate_config_reload_status status)
TLS key materials config, wrapper for grpc_tls_key_materials_config.
Definition: tls_credentials_options.h:44
std::shared_ptr< TlsKeyMaterialsConfig > key_materials_config() const
Definition: tls_credentials_options.h:312
TLS server authorization check config, wraps grps_tls_server_authorization_check_config.
Definition: tls_credentials_options.h:229
struct grpc_tls_server_authorization_check_config grpc_tls_server_authorization_check_config
Config for TLS server authorization check.
Definition: grpc_security.h:757
TlsServerAuthorizationCheckConfig(std::shared_ptr< TlsServerAuthorizationCheckInterface > server_authorization_check_interface)
void OnCredentialReloadDoneCallback()
Calls the C arg's callback function.
void Cancel(TlsCredentialReloadArg *arg) const
Definition: tls_credentials_options.h:149
std::shared_ptr< TlsServerAuthorizationCheckConfig > server_authorization_check_config() const
Definition: tls_credentials_options.h:319
~TlsServerAuthorizationCheckConfig()
grpc_status_code
Definition: status.h:26
This header provides an object that reads bytes directly from a grpc::ByteBuffer, via the ZeroCopyInp...
Definition: alarm.h:24
std::string error_details() const
void set_pem_root_certs(const std::string &pem_root_certs)
GPRAPI void gpr_log(const char *file, int line, gpr_log_severity severity, const char *format,...) GPR_PRINT_FORMAT_CHECK(4
Log a message.
TlsServerAuthorizationCheckArg(grpc_tls_server_authorization_check_arg *arg)
TlsServerAuthorizationCheckArg does not take ownership of the C arg passed to the constructor.
virtual int Schedule(TlsServerAuthorizationCheckArg *arg)=0
A callback that invokes the server authorization check.
std::string peer_cert() const
grpc_ssl_certificate_config_reload_status
Callback results for dynamically loading a SSL certificate config.
Definition: grpc_security_constants.h:56
const std::string pem_root_certs() const
Getters for member fields.
Definition: tls_credentials_options.h:52
TLS credential reload arguments, wraps grpc_tls_credential_reload_arg.
Definition: tls_credentials_options.h:81
virtual int Schedule(TlsCredentialReloadArg *arg)=0
A callback that invokes the credential reload.
TLS credential reloag config, wraps grpc_tls_credential_reload_config.
Definition: tls_credentials_options.h:130
grpc_ssl_certificate_config_reload_status status() const
virtual ~TlsCredentialReloadInterface()=default
void Cancel(TlsServerAuthorizationCheckArg *arg) const
Definition: tls_credentials_options.h:250
void set_target_name(const std::string &target_name)
int Schedule(TlsCredentialReloadArg *arg) const
Definition: tls_credentials_options.h:136
virtual void Cancel(TlsServerAuthorizationCheckArg *)
A callback that cancels a server authorization check request.
Definition: tls_credentials_options.h:223
void set_error_details(const std::string &error_details)
~TlsCredentialReloadArg()
struct grpc_tls_credential_reload_config grpc_tls_credential_reload_config
Config for TLS credential reload.
Definition: grpc_security.h:752
std::string target_name() const
void set_key_materials_config(const std::shared_ptr< TlsKeyMaterialsConfig > &key_materials_config)
TlsCredentialReloadArg(grpc_tls_credential_reload_arg *arg)
TlsCredentialReloadArg does not take ownership of the C arg that is passed to the constructor.
grpc_tls_credentials_options * c_credentials_options() const
Definition: tls_credentials_options.h:322
~TlsServerAuthorizationCheckArg()
std::string private_key
Definition: tls_credentials_options.h:47
TlsCredentialReloadConfig(std::shared_ptr< TlsCredentialReloadInterface > credential_reload_interface)
int Schedule(TlsServerAuthorizationCheckArg *arg) const
Definition: tls_credentials_options.h:236
void add_pem_key_cert_pair(const TlsKeyMaterialsConfig::PemKeyCertPair &pem_key_cert_pair)
virtual void Cancel(TlsCredentialReloadArg *)
A callback that cancels a credential reload request.
Definition: tls_credentials_options.h:125
grpc_tls_server_verification_option server_verification_option() const
Definition: tls_credentials_options.h:309
void set_peer_cert(const std::string &peer_cert)
@ GRPC_SSL_CERTIFICATE_CONFIG_RELOAD_FAIL
Definition: grpc_security_constants.h:59
void set_key_materials(const std::string &pem_root_certs, const std::vector< PemKeyCertPair > &pem_key_cert_pair_list)
TLS server authorization check arguments, wraps grpc_tls_server_authorization_check_arg.
Definition: tls_credentials_options.h:179
void set_peer_cert_full_chain(const std::string &peer_cert_full_chain)
void set_status(grpc_status_code status)
~TlsCredentialReloadConfig()
grpc_ssl_client_certificate_request_type
Definition: grpc_security_constants.h:62
std::string cert_chain
Definition: tls_credentials_options.h:48
std::shared_ptr< TlsCredentialReloadConfig > credential_reload_config() const
Definition: tls_credentials_options.h:315
grpc_tls_server_verification_option
Definition: grpc_security_constants.h:122
void * cb_user_data() const
Getters for member fields.
grpc_ssl_client_certificate_request_type cert_request_type() const
Getters for member fields.
Definition: tls_credentials_options.h:306
void * cb_user_data() const
Getters for member fields.
Definition: tls_credentials_options.h:46
An interface that the application derives and uses to instantiate a TlsCredentialReloadConfig instanc...
Definition: tls_credentials_options.h:120
@ GRPC_STATUS_NOT_FOUND
Some requested entity (e.g., file or directory) was not found.
Definition: status.h:54
An interface that the application derives and uses to instantiate a TlsServerAuthorizationCheckConfig...
Definition: tls_credentials_options.h:218
struct grpc_tls_credentials_options grpc_tls_credentials_options
TLS credentials options.
Definition: grpc_security.h:762
A struct containing all information necessary to schedule/cancel a credential reload request.
Definition: grpc_security.h:884
void set_success(int success)
void set_key_materials(const std::string &pem_root_certs, std::vector< TlsKeyMaterialsConfig::PemKeyCertPair > pem_key_cert_pair_list)
grpc_tls_server_authorization_check_config * c_config() const
Returns C struct for the server authorization check config.
Definition: tls_credentials_options.h:265
std::string peer_cert_full_chain() const
const std::vector< PemKeyCertPair > & pem_key_cert_pair_list() const
Definition: tls_credentials_options.h:53
void set_cb_user_data(void *cb_user_data)
Setters for member fields.
void OnServerAuthorizationCheckDoneCallback()
Calls the C arg's callback function.
int version() const
Definition: tls_credentials_options.h:56
void add_pem_key_cert_pair(const PemKeyCertPair &pem_key_cert_pair)
TLS credentials options, wrapper for grpc_tls_credentials_options.
Definition: tls_credentials_options.h:279
bool is_pem_key_cert_pair_list_empty() const
virtual ~TlsServerAuthorizationCheckInterface()=default
void set_error_details(const std::string &error_details)
#define GPR_ERROR
Definition: log.h:57
void set_cb_user_data(void *cb_user_data)
Setters for member fields.
TlsCredentialsOptions(grpc_tls_server_verification_option server_verification_option, std::shared_ptr< TlsKeyMaterialsConfig > key_materials_config, std::shared_ptr< TlsCredentialReloadConfig > credential_reload_config, std::shared_ptr< TlsServerAuthorizationCheckConfig > server_authorization_check_config)
void set_version(int version)
Definition: tls_credentials_options.h:65
A struct containing all information necessary to schedule/cancel a server authorization check request...
Definition: grpc_security.h:959
grpc_tls_credential_reload_config * c_config() const
Returns a C struct for the credential reload config.
Definition: tls_credentials_options.h:163
grpc_status_code status() const
std::string error_details() const
void set_pem_root_certs(const std::string &pem_root_certs)
Setter for key materials that will be called by the user.