Cihaz kimliği ve güvenliği

Aynı anda çok sayıda cihazı dağıtabilir ve yönetebilirsiniz. Cihaz yönetimi, gerektiğinde her cihazı ayrı ayrı tanımlama ve erişme özelliğini temel alır. Bunu yapmanızı sağlamak için her Azure Sphere cihazına, kurtarma işlemleri de dahil olmak üzere cihazdaki tüm güncelleştirmeler boyunca kalıcı olan benzersiz bir iç cihaz kimliği verilir.

Ancak dijital sistemlerde bir cihazın kimliği kolayca sahte, sahte veya kötüye kullanılabilir. Sonuç olarak, yalnızca kimlikleri doğrulanabilen ve doğrulanabilen cihazların yüksek değerli verilerinize erişmesine ve hizmetlerinize bağlanmasına izin vermelisiniz.

Azure Sphere, bir cihazın kendisini tanımlamasını (kimlik doğrulaması) ve cihazın kimliğinin (kanıtlama) onaylanmasını sağlamak için bir işlem sağlar. Azure Sphere Güvenlik Hizmeti tarafından kullanılan kimlik doğrulama ve kanıtlama işlemi, bir cihazın kimliğini onaylamak için önceden bilinen anahtarları, güvenli iletişimleri ve özel donanımları kullanır. Cihaz kimlik doğrulaması ve kanıtlama başarılı olursa, cihaza bir sertifika verilir. Geçerli bir sertifika şu ifadeyi gösterir:

  • Cihazın kimliği doğrulandı.
  • Cihaza güvenilebilir.

Azure Sphere ile cihaz sertifikaları önce katalog düzeyinde bir sertifikaya (kuruluşun yalnızca kendi kataloglarından gelen cihazlara güvenmesini kolaylaştırır) ve ardından Microsoft'un bu donanımın güvenli bir Microsoft işletim sistemi çalıştıran onaylı bir Azure Sphere yongasının doğrulanmış bir örneği olduğunu doğrulayan bir Microsoft sertifikasına zincirlenir.

Aşağıdaki kavramlar, cihaz kimliğinin en güvenli ve etkili yollarla kullanılmasına yardımcı olabilir:

  • Güven geçicidir
    Bir sisteme güven kaybedilebilir ve yeniden kazanılabilir. IoT sisteminde Sıfır Güven mimarisi uygulama ilkesi açıkça doğrulamaktır. Bu, bir cihazla her etkileşimde olduğunuzda cihazın orijinalliğini açıkça belirleyip veri işleminin güvenilir olduğunu kanıtladığınız anlamına gelir. Azure Sphere cihazları, Azure Sphere bulut güvenlik hizmetleriyle 24 saatte bir otomatik olarak bir kimlik doğrulama ve kanıtlama işlemi gerçekleştirir. Bir cihazın kimliğinin başarıyla doğrulandığının bir göstergesi, microsoft Azure Sphere Bulut Güvenlik Hizmeti'nde kökenli, şifreli olarak imzalanmış bir sertifikanın varlığıdır.

  • Kimlik = tanımlayıcılar + kanıtlama
    Tanımlayıcılar kopyalanabilir ve çoğaltılabilir. Sonuç olarak, bir cihaz yalnızca tanımlayıcısı tarafından bilinemez. Bir cihazın kimliği (veya kullanıcı kimliği), hem tanımlayıcının hem de böyle bir tanımlayıcının belirli bir bağlam içinde geçerli olduğunu kanıtlamanın bir bileşimi olarak kabul edilmelidir. Cihazlara tanımlayıcı atamamalı ve bunları kanıtlama işleminden bağımsız olarak kullanmamalısınız. Mümkün olduğunda, tanımlayıcıları sistemlerinizdeki her etkileşim katmanında kanıtlama kanıtıyla birleştirin.

  • Tanımlayıcılar + güven sertifikaları
    Tanımlayıcı, başvurudan farklı olarak düşünülmemelidir. Tek başına, başvurduğunda nesnenin güvenilirliği hakkında herhangi bir şey gösterdiği varsayılmamalıdır. Örneğin, MQTT iletilerine abone olmak için bir tanımlayıcı kullanın, güvenilir verileri portalda birlikte gruplandırmak için bir tanımlayıcı kullanın ve bir sistemdeki trafiği ve verileri yönlendirmek için tanımlayıcıları kullanın. Ancak, söz konusu güven olduğunda, tanımlayıcıya güvenmek yerine, şifrelemeyle imzalanmış ve zincirlenmiş bir sertifikaya güvenin. Sertifikalar özellikle sistem bileşenleri arasındaki parolasız veri akışı için faydalıdır ve belirli bir bağlamda test edilmiş ve güvenilir olduğu kanıtlanmış kimlik kanıtıdır.

Azure IoT Hub kullanırken, belgelenen önerilere göre yapılandırıldıysa, bu kavramlar zaten birleştirilir ve bu da güvenli ve dayanıklı bir sistemin dağıtımını basitleştirir.

Doğrudan denetlediğiniz Azure dışı uç noktalara veya hizmetlere bağlanırken de bu kavramları uygulamanız gerekir. Örneğin, MQTT kullanıyorsanız, bir cihaz yayım yaptığı MQTT konusunun bir parçası olarak kendi kimliğini içerebilir. Ancak, cihazdan bir konu güncelleştirmesi kabul etmeden önce, MQTT sunucusunun cihazın sağladığı sertifikanın bu konuya yayımlamak için kimliğini doğrulayıp doğrulamadığını doğrulaması gerekir.

Azure Sphere cihaz sertifikası ve cihaz kimliği erişimi

  • Uygulamanızdaki bir cihaz sertifikasına erişmek için DeviceAuth_GetCertificatePath işlevini kullanın.

  • Cihazın benzersiz Cihaz Kimliğine erişmek için, wolfSSL_X509_get_subject_name işlevini kullanarakkonuyu DeviceAuth_GetCertificatePath() işlevi tarafından sağlanan sertifikadan ayrıştırın.

Azure Sphere Cihaz Kimliğini Al kod parçacığı, üst düzey bir uygulamada Azure Sphere Cihaz Kimliğinin nasıl alınduğunu gösterir. Cihaz Kimliği'ni 128 karakterlik bir karakter arabelleği olarak döndürür. Bu kod parçacığı wolfSSL komutlarını kullanarak sertifikayla bir oturum açar, bağlamı ve sertifikayı çeker, Azure Sphere Cihazları için Cihaz Kimliği olan sertifikanın konu kimliğini ayrıştırıp işaretçi char olarak döndürür.