На стороне сервера должно быть:
server_credentials = grpc.ssl_server_credentials(
((private_key, cert_chain),), root_cert, require_client_auth=True)
server.add_secure_port('%s:%d' % (ip, port), server_credentials)
root_cert
- корневой ЦС для проверки сертификата клиента.private_key
и cert_chain
будут сертификатом, который сервер использует для проверки клиентом.
А на стороне клиента:
creds = grpc.ssl_channel_credentials(
certificate_chain=cert_chain, private_key=cert_key, root_certificates=root_ca)
channel = grpc.secure_channel('%s:%d' % (hostname, port), creds)
Где root_ca
- корневой ЦС дляпроверьте цепочку сертификатов сервера, а cert_chain
и cert_key
используются для аутентификации клиента.