Οι κύριες διαφορές μεταξύ των διαχειριζόμενων ταυτοτήτων που έχουν εκχωρηθεί από το σύστημα και των διαχειριζόμενων ταυτοτήτων που έχουν εκχωρηθεί από το χρήστη στο Azure είναι οι εξής:
- Δημιουργία και κύκλος ζωής: δημιουργείται αυτόματα οι ταυτότητες που έχουν εκχωρηθεί από το σύστημα, όταν δημιουργείται ένας πόρος Azure (όπως μια εικονική μηχανή ή υπηρεσία εφαρμογής). Μοιράζονται τον ίδιο κύκλο ζωής με τον γονικό πόρο. Εάν διαγραφεί ο πόρος, διαγράφεται επίσης η διαχειριζόμενη ταυτότητα. Αντίθετα, οι διαχειριζόμενες ταυτότητες που έχουν εκχωρηθεί από το χρήστη δημιουργούνται ως αυτόνομοι πόροι Azure και έχουν ανεξάρτητο κύκλο ζωής, απαιτώντας ρητή διαγραφή [3] [4].
- Πεδίο εφαρμογής και κοινή χρήση: Οι διαχειριζόμενες ταυτότητες που έχουν εκχωρηθεί στο σύστημα συνδέονται με έναν ενιαίο πόρο Azure και δεν μπορούν να μοιραστούν σε πολλούς πόρους. Ωστόσο, οι διαχειριζόμενες ταυτότητες που έχουν εκχωρηθεί από το χρήστη μπορούν να μοιραστούν σε πολλαπλούς πόρους, επιτρέποντας μια ομοιόμορφη άδεια που έχει οριστεί σε διαφορετικές υπηρεσίες [2] [3].
- Χρήση περιπτώσεων: Οι διαχειριζόμενες ταυτότητες που έχουν εκχωρηθεί στο σύστημα είναι ιδανικές για φόρτο εργασίας που περιέχονται σε έναν μόνο πόρο ή όταν απαιτούνται ανεξάρτητες ταυτότητες. Οι διαχειριζόμενες ταυτότητες που έχουν εκχωρηθεί από το χρήστη είναι καλύτερα προσαρμοσμένες για σενάρια όπου πολλοί πόροι πρέπει να μοιράζονται την ίδια ταυτότητα, όπως εφαρμογές με πολλαπλά στοιχεία που απαιτούν σταθερά δικαιώματα πρόσβασης [3] [4].
- Διαχείριση και συντήρηση: Και οι δύο τύποι χειρίζονται αυτόματα την περιστροφή των πιστοποιητικών και την ασφαλή παράδοση, αλλά οι διαχειριζόμενες ταυτότητες που έχουν εκχωρηθεί από τους χρήστες προσφέρουν μεγαλύτερη ευελιξία στη διαχείριση των ταυτότητας σε διαφορετικούς πόρους, οι οποίες μπορεί να είναι επωφελείς σε σύνθετα περιβάλλοντα [3] [7].
Αναφορές:
[1] https://www.atmosera.com/blog/azure-service-principal-vs-managed-identity/
[2] https://www.reddit.com/r/azure/comments/xkzxrc/azure_managed_identity_vs_user_assigned_managed/
[3] https://learn.microsoft.com/en-us/entra/identity/managed-identities-azure-resources/overview
[4] https://docs.azure.cn/en-us/entra/identity/managed-identities-azure-resources/overview
[5] https://stackoverflow.com/questions/61322079/difference-between-service-principal-and-managed-identials-in-azure
[6] https://www.youtube.com/watch?v=tfzijbilwuw
[7] https://learn.microsoft.com/en-us/entra/identity/managed-identities-azure-resources/managed-identity-best-practice-recommendations
[8] https://blog.johnfolberth.com/azure-ganaged-identities-user-vs-system-assigned/