Ön koşullar
Sunucu uygulaması için gereken Gem'ler:
- google-protobuf (bu eğiticide 3.2.X sürümü kullanılmıştır)
- grpc (bu eğitimde 1.2.X sürümü kullanılmıştır)
Hizmet tanımını indirin ve aşağıdaki dizin yapısını oluşturun:
[base_dir]
├── certificates
├── lib
├── protos
└── booking_service.proto
└── server.rb
Arayüz açıklamasından Ruby kitaplıkları oluşturun:
$ cd [base_dir]
$ grpc_tools_ruby_protoc -I protos --ruby_out=lib --grpc_out=lib protos/booking_service.proto
Sunucuyu uygulama
İskelet koda ihtiyacınız varsa bir Google iletişim noktasından isteyin.
Sunucuyu TLS olmadan test etme
İlk test için TLS devre dışı bırakılabilir:
$ cd [base_dir]
$ ruby server.rb --disable_tls
Bu, üretimde kullanılmaya uygun değildir.
Üretim sertifikalarını yapılandırma
Sunucuda TLS'yi etkinleştirmek için aşağıdaki dosyalar gereklidir:
certificates/server.pemPEM biçiminde sunucunun sertifika zinciricertificates/server.keysunucu sertifika zincirinin özel anahtarıcertificates/trusted_client_roots.pemistemcilerin kimliği doğrulanırken güvenilen kök sertifikalar
İstemcinin kimliği doğrulanırken güvenilir istemci kök sertifikaları grubu kullanılır. Bu güvenilir kök serisini Mozilla gibi bir yetkiliden almayı veya Google İnternet Kurumu G2 tarafından şu anda önerilen kök serisini yüklemeyi seçebilirsiniz. İkinci durumda, zaman zaman kök sertifikayı manuel olarak güncellemeniz gerekebilir.
Nihai dizin yapısı
[base_dir]
├── certificates
├── server.pem
├── server.key
└── trusted_client_roots.pem
├── lib
├── booking_service_pb.rb
└── booking_service_services_pb.rb
├── protos
└── booking_service.proto
└── server.rb