لا يكون اختبار الهويات المدارة في بيئة محلية أمرًا واضحًا لأن الهويات المدارة مصممة بشكل أساسي للاستخدام في موارد Azure. ومع ذلك ، هناك طرق لمحاكاة أو محاكاة الهويات المدارة محليًا:
1. التسجيل في Azure ARC: يمكنك تسجيل جهازك المحلي في Azure Arc ، والذي يتيح لك تعيين هوية مُدارة لجهازك. يمكن أن يكون هذا إما هوية مُجد من قبل النظام أو المُجادة للمستخدم. بمجرد التسجيل ، يمكنك اختبار الهويات المدارة محليًا من خلال تعيين الأذونات اللازمة للهوية المدارة [1].
2. محاكاة الهوية المدارة محليًا: هناك نهج آخر هو محاكاة خدمة الهوية المدارة Azure محليًا عن طريق تشغيل خدمة بيانات تعريف مثيل وهمية. يتضمن ذلك محاكاة واجهة برمجة تطبيقات الرمز المميز لإرجاع رمز الوصول ، عادةً باستخدام بيانات اعتماد Azure CLI. تتيح لك هذه الطريقة اختبار الرمز الذي يستخدم الهويات المدارة دون وجودها فعليًا على الجهاز المحلي الخاص بك [3].
3. باستخدام DefaultazureCredential: بالنسبة لمعظم سيناريوهات التطوير ، يوصى باستخدام `defaultazurecredential`. تحاول بيانات الاعتماد هذه تلقائيًا طرق المصادقة المختلفة ، بما في ذلك Visual Studio و Azure CLI و Azure AD المصادقة المتكاملة ، لمصادقة تطبيقك محليًا. أثناء عدم استخدام الهويات المدارة مباشرة ، فإنه يوفر تجربة مصادقة سلسة مماثلة [5] [7].
باختصار ، على الرغم من أنه لا يمكن استخدام الهويات المدارة نفسها مباشرة في بيئة محلية ، يمكنك إما محاكاةها أو استخدام طرق مصادقة بديلة مثل "DefaultazureCredential" للتنمية المحلية.
الاستشهادات:
[1] https://www.foxdeploy.com/blog/how-to---tigrate-an-azure-function-app-to-use-a-danaged-identity.html
[2] https://stackoverflow.com/questions/67845857/can-a-user-assign--
[3] https://gist.github.com/maskati/e0d74330dcf15848b043825cf6b2f8b7
[4] https://learn.microsoft.com/en-us/entra/identity/managed-identities-azure-resources/overview-for-developers
[5]
[6] https://learn.microsoft.com/en-us/entra/identity/managed-azed-azure-resources/how-danage-user-assigned-managed-ientities
[7] https://stackoverflow.com/questions/75930046/how-to-to-azure-function-locally-use-user-assigned-edaged-iced-configura
[8] https://www.codemag.com/article/2107041/eliminate-secrets-from-your-applications-with-azure-managed-ientity
[9] https://learn.microsoft.com/en-us/azure/app-service/overview-managed-identity