Bu dokümanda, Fleet Engine sisteminizin üç birincil ortamı (arka uç sunucunuz, Fleet Engine sunucunuz, istemci uygulamalarınız ve web siteleriniz) arasında bilgi alışverişinin Fleet Engine tarafından nasıl güvence altına alındığı açıklanmaktadır.
Fleet Engine, en az ayrıcalık ilkesini kullanarak güvenliği iki temel şekilde yönetir:
Uygulama Varsayılan Kimlik Bilgileri (ADC): Sunucudan sunucuya iletişim gibi yüksek ayrıcalıklı ortamlar için. Arka uç sunucunuz araç ve gezi oluşturup bunları Fleet Engine'da yönetirken kullanılır. Ayrıntılar için Uygulama Varsayılan Kimlik Bilgileri başlıklı makaleyi inceleyin.
JSON Web Token'ları (JWT): Akıllı telefonlarda ve tarayıcılarda çalışan istemci uygulamaları gibi güven düzeyi düşük ortamlar için. Fleet Engine'da araç konumunu güncelleme gibi daha düşük ayrıcalıklı işlemleri gerçekleştirmek için kullanılır.
Güven düzeyi düşük ortamların gerektirdiği JWT'ler, hizmet hesabı gizli anahtarlarını korumak için arka uç sunucunuz tarafından oluşturulur ve yayınlanır. Ayrıca Fleet Engine'e özgü ek iddialar içerir. Ayrıntılar için JSON Web Jetonları başlıklı makaleye bakın.
Örneğin, sürücü uygulamanız varsa sürücüler uygulama üzerinden Fleet Engine'daki verilere erişir. Uygulama, arka uç sunucunuzdan aldığı JWT'ler kullanılarak kimliği doğrulanır. Hizmet hesabı rolüyle birlikte dahil edilen JWT iddiaları, sürücü uygulamasının sisteminizin hangi bölümlerine erişebileceğini ve neler yapabileceğini belirler. Bu yaklaşım, erişimi yalnızca sürüş görevlerini tamamlamak için gereken verilerle sınırlandırır.
Fleet Engine, aşağıdakileri sağlamak için bu güvenlik yaklaşımlarını kullanır:
Kimlik doğrulama, isteği gönderen öğenin kimliğini doğrular. Fleet Engine, yüksek güven ortamları için ADC'yi, düşük güven ortamları için JWT'yi kullanır.
Yetkilendirme, kimliği doğrulanmış bir öğenin hangi kaynaklara erişimi olduğunu belirtir. Fleet Engine, Google Cloud IAM rollerine sahip hizmet hesaplarının yanı sıra kimliği doğrulanmış öğelerin istenen verileri görme veya değiştirme izinlerine sahip olmasını sağlayan JWT iddialarını kullanır.
Sunucu ve istemci güvenlik ayarları
Fleet Engine ile güvenliği etkinleştirmek için arka uç sunucunuzda, istemci uygulamalarınızda ve web sitelerinizde gerekli hesapları ve güvenliği ayarlayın.
Aşağıdaki şemada, arka uç sunucunuzda ve istemci uygulamalarınızda güvenliği ayarlama adımlarına genel bir bakış gösterilmektedir.
Daha fazla bilgi için aşağıdaki bölümlere bakın.
Arka uç sunucu güvenlik ayarları
Filo yöneticisinin aşağıdaki adımları uygulaması gerekir:
Hizmet hesapları oluşturun ve yapılandırın:
Google Cloud Console'da hizmet hesapları oluşturun.
Hizmet hesaplarına belirli IAM rolleri atayın.
Arka uç sunucunuzu oluşturulan hizmet hesaplarıyla yapılandırın. Ayrıntılar için Hizmet hesabı rolleri başlıklı makaleyi inceleyin.
Fleet Engine ile güvenli iletişimi yapılandırma (ADC): Arka uç sunucunuzu, uygun *Yönetici hizmet hesabıyla Uygulama Varsayılan Kimlik Bilgileri'ni kullanarak Fleet Engine örneğinizle iletişim kuracak şekilde yapılandırın. Ayrıntılar için Uygulama Varsayılan Kimlik Bilgileri başlıklı makaleyi inceleyin.
İstemci uygulamalarıyla güvenli iletişimi yapılandırma (JWT): İstemci uygulamaları ve izleme web siteleri için uygun iddialar içeren JWT'ler oluşturmak üzere bir JSON Web Jetonu oluşturucu oluşturun. Ayrıntılar için JSON Web Jetonu verme başlıklı makaleyi inceleyin.
Uygulama güvenliği kurulumu
Uygulama geliştiricilerin, istemci uygulamalarınıza veya web sitelerinize arka uç sunucunuz tarafından oluşturulan JSON Web jetonlarını getirmenin bir yolunu eklemesi ve Fleet Engine ile güvenli bir şekilde iletişim kurmak için bunları kullanması gerekir. Ayrıntılar için ihtiyacınız olan uygulamaların Sürücü Deneyimi veya Tüketici Deneyimi dokümanlarında yer alan kurulum talimatlarına bakın.
Sunucu ve istemci uygulaması güvenlik akışı
Aşağıdaki ardışık düzen şemasında, arka uç sunucusuyla ADC ve istemci uygulamaları ve web siteleriyle JWT'ler kullanılarak Fleet Engine ile sunucu ve istemci uygulaması kimlik doğrulama ve yetkilendirme akışı gösterilmektedir.
Arka uç sunucunuz, Fleet Engine'da araç ve geziler ya da görevler oluşturur.
Arka uç sunucunuz bir araca yolculuk veya görev gönderir: Etkin durumdayken sürücü uygulaması, atamayı alır.
Arka uç sunucunuz: Atanan görev veya gezi için uygun IAM rolüne sahip ilgili hizmet hesabı için bir JWT imzalar ve yayınlar.
İstemci uygulaması: İstemci uygulaması, araç konum güncellemelerini Fleet Engine'a göndermek için alınan JWT'yi kullanır.
Sırada ne var?
- Fleet Engine projenizi oluşturun.
- Sunucunuzdan JSON Web Jetonu nasıl yayınlayacağınızı öğrenin.
- Hizmet hesabı rolleri hakkında daha fazla bilgi edinin.
- JWT'ler hakkında daha fazla bilgi edinin.