Bot Framework güvenlik yönergeleri

ŞUNLAR IÇIN GEÇERLIDIR: SDK v4

Botlar finansal hizmetler, perakende ve seyahat gibi önemli iş alanlarında giderek yaygınlaşıyor. Bot kredi kartları, SSN, banka hesapları ve diğer kişisel bilgiler gibi çok hassas verileri toplayabilir. Bu nedenle botların güvenli olması ve yaygın tehditlere ve güvenlik açıklarına karşı korunması önemlidir.

Botunuzun güvenliğini artırmak için bazı standart önleyici önlemler alabilirsiniz. Bazı güvenlik önlemleri diğer yazılım sistemlerinde kullanılanlara benzerken, bazıları Bot Framework'e özeldir. İkincisi için Azure Güvenlik Karşılaştırması'na bakın. Karşılaştırma, Azure'da bulut çözümlerinizin güvenliğini nasıl sağlayabileceğinize ilişkin öneriler sağlar.

Özetle güvenlik sorunları

Bu makalede güvenlik sorunları 2 kategoriye ayrılır:

  • Tehditler: Birisinin botunuzu tehlikeye atmak için kullanabileceği kimlik sahtekarlık, kurcalama, bilgi açıklama, hizmet reddi gibi taktikler.

  • Güvenlik açıkları: Botunuzun veya botunuzun yönetiminin hatalar veya gevşek güvenlik gibi taktiklere açık olma yolları.

Güvenlik açıklarınızı azaltmak tehditleri azaltmak için iyi bir yoldur ve güvenlik açıklarını azaltmanın bilinen bir yolu, geliştirme ve dağıtım sürecinde güvenlik denetim noktaları uygulamaktır.

Ortak güvenlik yönergeleri

Aşağıdaki alanlar, uygulamalarda yaygın olarak kullanılan standart en iyi güvenlik uygulamaları kapsamındadır.

Ağ trafiğinin güvenliğini sağlama

İletim sırasında veri kurcalama ve açıklama işlemlerini ele almak için şifreleme denetimleri sağlayan protokoller vardır. Bu bağlamda botların yalnızca güvenli kanallar üzerinden iletişim kurması gerekir.

Kablo üzerinde veri alışverişi yapmak için güvenli bir sistem, Aktarım Katmanı Güvenliği (TLS) veya Güvenli Yuva Katmanı (SSL) ile korunan şifrelenmiş bağlantılarda HTTP üzerinden veri aktaran HTTPS protokollerini kullanmalıdır. Ayrıca bkz. RFC 2818 - TLS üzerinden HTTP.

Dekont

Tüm Bot Hizmeti kanalları https ve TLS 1.2 gerektirir.

Kendi kendini yok eden iletiler

Hassas verileri artık gerekli olmadığı anda, genellikle ileti alışverişi bittikten sonra veya belirli bir süre sonra kalıcı olarak silin. Bu, kişisel bilgileri, kimlikleri, PIN'leri, parolaları, güvenlik sorularını ve yanıtlarını vb. içerebilir.

Veri depolama

En iyi yöntem, bilgileri belirli bir süre için güvenli bir durumda depolamayı ve daha sonra amacına hizmet ettikten sonra atmanızı gerektirir.

Bazı yaygın güvenlik teknikleri aşağıda listelenmiştir.

Veritabanı güvenlik duvarları

  • Güvenlik duvarları trafiğe erişimi varsayılan olarak reddeder. İzin verilen tek trafik, verilere erişmesi gereken belirli uygulamalardan veya web sunucularından kaynaklanmalıdır.
  • Ayrıca bir web uygulaması güvenlik duvarı dağıtmanız gerekir. Bunun nedeni, bir web uygulamasına yönelik SQL ekleme saldırıları gibi saldırıların veritabanından veri sızdırmak veya silmek için kullanılabilmesidir.

Veritabanı sağlamlaştırma

  • Veritabanının satıcı tarafından hala desteklendiğinden ve bilinen güvenlik açıklarını kaldırmak için tüm güvenlik düzeltme eklerinin yüklü olduğu veritabanının en son sürümünü çalıştırdığınızdan emin olun.
  • İhtiyacınız olmayan özellikleri veya hizmetleri kaldırın veya devre dışı bırakın ve varsayılan hesapların parolalarını varsayılan değerlerinden değiştirdiğinizden emin olun; veya daha iyisi, ihtiyacınız olmayan tüm varsayılan hesapları silin.
  • Herhangi bir ayarın devre dışı bırakılmasının belirli bir nedeni olmadığı sürece, veritabanı tarafından sağlanan tüm veritabanı güvenlik denetimlerinin etkinleştirildiğinden emin olun.

Değerli bilgileri en aza indirme

  • Veritabanında olması gerekmeyen gizli bilgileri depolamadığınızdan emin olun.
  • Uyumluluk veya başka amaçlarla tutulan veriler, veritabanı güvenlik tehditlerine karşı daha az duyarlı olan daha güvenli depolama alanına (belki de çevrimdışı) taşınabilir.
  • Özgün yükleme yordamı sırasında bir sunucu tarafından yazılan geçmiş dosyalarını sildiğinizden emin olun. Yükleme başarılı olursa, bu dosyaların hiçbir değeri yoktur, ancak kötüye kullanılabilecek bilgiler içerebilir.

Education

Botlar, bir şirket ve müşterileri arasında yenilikçi bir etkileşim aracı sağlar. Ancak bir şirketin web sitesine müdahale için potansiyel olarak bir arka kapı sağlayabilirler. Bu nedenle, bir şirket, geliştiricilerinin web sitesi güvenliğinin bir parçası olarak bot güvenliğinin önemini anladığını garanti etmelidir. Ayrıca, kullanıcıların hataları da bir sorun olabilir. Bu, botların güvenli bir şekilde nasıl kullanılabileceğini öğrenmek için biraz eğitim gerektirir, örneğin:

  • Geliştiriciler için bir strateji, botu güvenli bir şekilde kullanma hakkında iç eğitim içermelidir.
  • Müşterilere botla güvenli bir şekilde nasıl etkileşim kuracaklarını gösteren yönergeler verilebilir.

Bota özgü güvenlik yönergeleri

Aşağıdaki alanlar Bot Framework uygulamaları için bazı standart güvenlik en iyi yöntemleri kapsamındadır. Aşağıdaki yönergelerde Bot Framework en iyi uygulama güvenlik önlemleri açıklanmaktadır. Daha fazla bilgi için bkz . Güvenlik ve Gizlilik SSS.

Bot Bağlan veya kimlik doğrulaması

Bot Bağlan veya hizmeti, bot ve kanallar (kullanıcılar) arasında ileti alışverişi yapmak için yerel olarak HTTPS kullanır. Bot Framework SDK'sı, temel bot-kanal kimlik doğrulamasını sizin için otomatikleştirir.

Uyarı

Kendi kimlik doğrulama kodunuzu yazıyorsanız, tüm güvenlik yordamlarını doğru bir şekilde uygulamanız kritik önem taşır. Kimlik doğrulaması makalesinde açıklanan tüm adımları uygulayarak, bir saldırganın botunuza gönderilen iletileri okuyabilmesi, botunuzun kimliğine bürünen iletiler gönderebilmesi ve gizli anahtarlar çalması riskini azaltabilirsiniz.

Kullanıcı kimlik doğrulaması

Azure AI Bot Hizmeti kimlik doğrulaması, Microsoft Entra ID, GitHub, Uber gibi çeşitli kimlik sağlayıcılarında kullanıcıların kimliğini doğrulamanıza ve erişim belirteçleri almanıza olanak tanır. Özel bir OAuth2 kimlik sağlayıcısı için kimlik doğrulamasını da yapılandırabilirsiniz. Tüm bunlar, desteklenen tüm kimlik sağlayıcıları ve kanallarında çalışan tek bir kimlik doğrulama kodu yazmanızı sağlar. Bu özellikleri kullanmak için aşağıdaki adımları gerçekleştirmeniz gerekir:

  1. Botunuzda, bir kimlik sağlayıcısına uygulama kaydınızın ayrıntılarını içeren statik olarak yapılandırın settings .
  2. OAuthCardBir kullanıcıda oturum açmak için, önceki adımda sağladığınız uygulama bilgileri tarafından yedeklenen bir kullanın.
  3. Erişim belirteçlerini Azure AI Bot Hizmeti API aracılığıyla alın. İyi bir uygulama, kimliği doğrulanmış bir kullanıcının oturum açma süresini sınırlamaktır.

Daha fazla bilgi için Kullanıcı kimlik doğrulaması makalesine bakın.

Web Sohbeti

Web Sohbeti denetimini kullanırken kimliğe bürünme ve kimlik sahtekarlığına ilişkin bazı önemli güvenlik konularını göz önünde bulundurmanız gerekir. Daha fazla bilgi için bkz . Direct Line gelişmiş kimlik doğrulaması.

Ek bilgiler