מסגרת פתרון בעיות שקשורות למדיניות המכשיר

החל מ-Android 14, כמה סוכני ניהול מדיניות של מכשירים יכולים להגדיר מדיניות באמצעות ממשקי API של DevicePolicyManager.

עקרונות כלליים

במקרים שבהם יותר מסוכן אחד של ניהול מדיניות מכשירים אוכף את כללי המדיניות על המשתמש:

  • סוכני ניהול מדיניות המכשיר יכולים לשלוח שאילתות לגבי המדיניות שחלה או המדיניות שהוגדרה לכל מדיניות שהם יכולים להגדיר.
  • כל הגדרת מדיניות מובילה לקריאה חוזרת (onPolicySetResult) שמציינת אם המדיניות הוגדרה בצורה נכונה או אם לא ניתן היה להגדיר אותה מסיבה כלשהי (למשל, התנגשות בין מדיניות או כשל בחומרה).
  • אם המצב המטופל של מדיניות ישתנה מאוחר יותר, תקבלו קריאה חוזרת (onPolicyChanged) עם אינדיקציה אם המדיניות תואמת למה שהסוכן הזה הגדיר.
  • רוב כללי המדיניות פועלים על בסיס 'המדיניות המחמירה ביותר מנצחת'. כלומר, המדיניות המחמירה ביותר שנבחרה על ידי כל סוכן לניהול מדיניות המכשיר נאכפת.

Android מגרסה 14 (API ברמה 34) ואילך

בגרסה Android 14 (רמת API 34) ואילך, במכשירים שתואמים ל-Android צריך להטמיע את מנגנון יישוב המדיניות כפי שמוגדר בטבלה הבאה, כדי לפתור התנגשויות כשמדיניות מוגדרת על ידי יותר מסוכן אחד לניהול מדיניות מכשירים. מנגנוני הפתרון שצוינו בטבלה הבאה (MostRecent,‏ MostRestrictive,‏ StringSetUnion ו-TopPriority) הם שמות הכיתות של מנגנוני הפתרון שמוגדרים בפרויקט Android Open Source Project.

ממשק ה-API של DevicePolicyManager מנגנון רזולוציה
MostRecent: המדיניות האחרונה שחלה היא זו שהוגדרה על ידי מספר אדמינים.
MostRestrictive: הגדרה של הגבלת המשתמשים אם היא הוגדרה על ידי אדמין כלשהו.
StringSetUnion: הפתרון הוא קבוצת כללי המדיניות שהוגדרו על ידי אדמין אחד או יותר (במדיניות שמיוצגת כקבוצת מחרוזות).
TopPriority: הבעיה נפתרת לפי סדר העדיפויות הבא, מהגבוה לנמוך, שמוגדר לפי התפקיד של סוכן הניהול של מדיניות המכשיר:
  1. האדמין של נעילת המכשיר
  2. האדמין הארגוני
  3. כל אדמין אחר