תמיכה ב-Captive Portal API

החל מ-Android 11 Beta 2, המערכת תומכת בקבוצת משנה של פונקציות שמתוארות ב-RFC7710bis וב-API של פורטל שבוי שמשויך אליו.

ממשק ה-API מספק דרך מהימנה לנקודות גישה לזהות את עצמן כפורטלים שבויים. התכונה הזו מאפשרת גם תרחישי שימוש חדשים לנקודות גישה לפרסום מידע למשתמשים, כמו מידע על סשנים ומידע על המקום.

שיפור בזיהוי פורטלים שבויים

מאז Android 5.0 (רמת API‏ 21), מכשירי Android מזהים פורטלים שבויים ומודיעים למשתמש שהוא צריך להיכנס לרשת כדי לגשת לאינטרנט. הפורטלים השבויים זוהו באמצעות בדיקות HTTP בטקסט גלוי ליעדים ידועים (כמו connectivitycheck.gstatic.com), ואם הבדיקה קיבלה הפניה אוטומטית של HTTP, המכשיר הניח שהרשת היא פורטל שבוי. השיטה הזו לא תמיד אמינה כי אין כתובת URL סטנדרטית לבדיקה, ויכול להיות שרשתות של פורטלים שבויים יאפשרו או יחסמו בדיקות כאלה בטעות (במקום להפנות אותן). ה-API מאפשר לפורטלים לספק אות חיובי לכך שנדרשת התחברות, יחד עם כתובת URL להתחברות.

‫Android 11 תומך באפשרות DHCP‏ 114 כפי שמתואר ב-RFC7710bis. יכול להיות שבעדכון עתידי נוסיף תמיכה באפשרות 'פרסום נתב'. אם המכשיר מקבל כתובת URL של captive portal API דרך האפשרות הזו במהלך לחיצת היד של DHCP, המכשירים מאחזרים את התוכן של ה-API מיד אחרי ההתחברות ומבקשים מהמשתמשים להתחבר אם הרשת היא captive, בהתאם ל-captive portal API.

אם ה-API לא זמין או שלא מתבצע פרסום של פורטל, המערכת תמשיך לזהות פורטלים ולאמת את הקישוריות לאינטרנט באמצעות בדיקות HTTP/HTTPS, כמו קודם.

מידע שמתפרסם על מקומות

‫Android 11 תומך ב-venue-info-url שמוגדר ב-captive portal API. כתובת ה-URL הזו מאפשרת למשתמשים לקבל בדפדפן מידע ספציפי להקשר על המקום שבו נמצאת נקודת הגישה. כברירת מחדל, המשתמשים יכולים לפתוח את כתובת ה-URL הזו אם הם בוחרים לעשות זאת מתוך התראה אחרי שהם מתחברים, או מתוך הגדרות הרשת שלהם.

צילום מסך שבו מוצג חלון קופץ שמאפשר למשתמש להיכנס לכתובת ה-URL של המקום
איור 1. אם הרשת מספקת כתובת URL של מקום, המערכת מציגה הודעה שמאפשרת למשתמש להיכנס לדף הזה.

צילום מסך שמראה איך לפתוח את האתר מהמסך 'פרטי הרשת'
איור 2. כפתור לפתיחת האתר ממסך פרטי הרשת

תרחישי שימוש עתידיים

בזמן ההשקה, Android 11 תומכת רק בקבוצה בסיסית של פונקציות מ-API של פורטל שבוי, אבל יכול להיות שפונקציות חדשות יסופקו למכשירים באמצעות עדכוני מערכת של Google Play אחרי ההשקה. אנחנו ממליצים למפעילי רשת להטמיע את captive portal API, תוך התחשבות בשיפורים אפשריים עתידיים:

  • הזמן שנותר בסשן (seconds-remaining) משמש כרגע באפליקציית ההגדרות שמוגדרת כברירת מחדל כדי להודיע למשתמשים כמה זמן נשאר להם בפורטל. אפשר גם להשתמש ב-API כדי להאריך את משך ההפעלה דרך כתובת ה-URL להתחברות (can-extend-session), וכך לאפשר למערכת להודיע למשתמש על הפעלות שפג תוקפן או שתוקפן עומד לפוג.
  • אפשר לפרסם את מכסות הנתונים (bytes-remaining) דרך ה-API כדי לאפשר למשתמשים לעקוב אחרי הנתונים שנותרו.