JWT anahtarlarını Azure mantık uygulamalarında güvenli bir şekilde depolamak için, güvenlik ve uyumluluğu artıran çeşitli stratejilerden yararlanabilirsiniz:
1. Kimlik doğrulama için Yönetilen Kimliği (MI) kullanın
- Neden güvenlidir: Yönetilen kimlik, bağlantı anahtarlarını veya sırları manuel olarak saklama ve yönetme ihtiyacını ortadan kaldırır. Güvenli erişim için Azure Active Directory'yi (AAD) kullanır, kimlik doğrulama ve yetkilendirme işlemlerini basitleştirir.- Nasıl uygulanır: Mantık uygulamanız için sistem atanan yönetilen kimliği etkinleştirin. Bu, mantık uygulamasının, anahtarları doğrudan taşımadan Azure Key Vault gibi Azure hizmetleriyle kimlik doğrulaması yapmasını sağlar [1] [9].
2. Azure Anahtar Kasası Entegrasyonu
- Neden Güvenli: Azure Anahtar Kasası, kriptografik anahtarlar da dahil olmak üzere hassas verileri güvenli bir şekilde depolar ve yönetir. Anahtarlar, özel anahtarı açığa çıkarmadan anahtar kasada oluşturulabilir ve kullanılabilir.- Nasıl uygulanır:
- Azure CLI veya portalı kullanarak Azure Anahtar Kasası'nda bir anahtar oluşturun.
- Mantık uygulamanızdaki anahtarlara erişmek ve yönetmek için Azure Key Vault Rest API'sini kullanın. Bu, mantık uygulamanızın anahtar almasına veya anahtarları kullanmasına izin vermek için anahtar kasada erişim politikalarının oluşturulmasını gerektirir [5] [6].
3. JWT Üretimi ve Depolama Güvenli
- Neden güvenlidir: JWT'lerin güvenli bir şekilde oluşturulması güvenli bir imzalama anahtarının kullanılmasını ve jetonun HTTPS üzerinden iletilmesini içerir.- Nasıl uygulanır:
- Güvenli bir gizli anahtarla JWTS oluşturmak için Node.js'de `Jsonwebtoken 'gibi bir kütüphane kullanın.
- İmza sırının ideal olarak Azure Key Vault'ta güvenli bir şekilde saklandığından emin olun.
- müdahaleyi önlemek için JWT'leri her zaman HTTP'ler üzerinden iletin [3] [5].
4. JWT kullanım için en iyi uygulamalar
- Uygun son kullanma sürelerini belirleyin: JWT'lerin kötüye kullanımı sınırlamak için makul son kullanma sürelerine sahip olduğundan emin olun.- HTTPS kullanın: JWT'leri her zaman HTTPS üzerinden iletin.
- Sırları imzalamaya devam edin: JWT imzalamanızı asla ortaya çıkarmayın [3].
Bu stratejileri uygulayarak, yüksek güvenlik standartlarını ve uyumluluk gereksinimlerini korurken Azure mantık uygulamalarında JWT anahtarlarını güvenli bir şekilde yönetebilirsiniz.
Alıntılar:
[1] https://learn.microsoft.com/en-ie/answers/questions/2088117/how-to-get-jwt-token-which-is-genered-in-ps-code
[2] https://www.descope.com/blog/post/developer-guide-jwt-sorage
[3] https://www.restack.io/p/tokenizasyon-asure-logic-apps-wswer-cat-ai
[4] https://learn.microsoft.com/en-us/azure/logic-apps/logic-apps-custom-api-authentication
[5] https://zure.com/blog/azure-ey-upault-sign-and-ncrypt-json-web-tokens/
[6] https://stackoverflow.com/questions/57884305/using-asure-key-upault-on-azure-logic-app-api-connection
[7] https://learn.microsoft.com/en-us/azure/logic-apps/logic-apps-sacuring-a-gic-app
[8] https://turbo360.com/blog/logic-app-best-practicices-secure-your-sure-logic-apps
[9] https://gotoguy.blog/2020/12/04/blog-series-powering-up-mour-home-swice-muts-part-3-using-logic-ususing-oauth-and-hue-remote-api/