ارائه حساب های کاربری

تأمین هویت (یا تأمین حساب ) فرآیند راه‌اندازی حساب‌ها و برقراری ارتباط بین سه سیستم و در برخی موارد راه‌اندازی ارتباط بین کاربران و دستگاه‌های آنها است.

در یک محیط سازمانی Android، سه سیستم مختلف اطلاعات حساب را نگه می‌دارند:

  • فهرست کاربران سازمان منبع قطعی اطلاعات در مورد کاربران است.
  • شما (ارائه دهنده راه حل EMM) باید حداقل یک فهرست راهنمای کاربران سازمان را حفظ کنید.
  • Google برخی از اطلاعات مربوط به حساب‌های Google Play مدیریت شده و حساب‌های Google را برای ارائه مدیریت برنامه از طریق Google Play حفظ می‌کند.

یک منبع Users یک حساب مرتبط با یک شرکت را نشان می دهد. این حساب می‌تواند مختص یک دستگاه باشد یا می‌تواند با فردی مرتبط باشد که چندین دستگاه (تلفن همراه، تبلت و غیره) دارد و از حساب در همه آنها استفاده می‌کند. بسته به نحوه راه‌اندازی شرکت مشتری ، این حساب می‌تواند فقط به Google Play مدیریت شده یا سایر خدمات Google دسترسی داشته باشد:

  • حساب‌های مدیریت‌شده Google Play ابزاری شفاف برای شرکت‌ها فراهم می‌کند تا از طریق ارائه‌دهنده راه‌حل مدیریت تحرک سازمانی (EMM) به‌طور خودکار حساب‌های کاربر یا دستگاه ایجاد کنند. این حساب‌ها فقط به Google Play مدیریت شده دسترسی دارند.

  • حساب‌های Google حساب‌های موجودی هستند که توسط Google مدیریت می‌شوند و نیاز به همگام‌سازی با منابع حساب Google دارند.

جدول 1: فیلدها و روش های API کاربران

حساب‌های Google Play مدیریت شده حساب های مدیریت شده گوگل
میدان
شناسه
مهربان
شناسه حساب یک شناسه منحصربه‌فرد که ایجاد می‌کنید و به شناسه ( userId ) بازگردانده شده از Google Play نگاشت می‌کنید. از اطلاعات شناسایی شخصی (PII) استفاده نکنید. تنظیم نشده است.
نوع حساب حساب دستگاه، حساب کاربری حساب کاربری
نمایش نام نامی که در موارد رابط کاربری نمایش داده می‌شود، مانند Google Play. از اطلاعات قابل شناسایی شخصی استفاده نکنید. تنظیم نشده است.
نوع مدیریت emmمدیریت شد googleManaged, emmManaged
ایمیل اولیه تنظیم نشده است. این فیلد کلید اصلی است که توسط آن همگام سازی را از حساب های دامنه مدیریت شده توسط Google با حساب های کاربری در سیستم خود مدیریت می کنید.
روش ها
حذف کنید
generateAuthenticationToken
GenerationToken
دریافت کنید
getAvailableProductSet
درج کنید
فهرست
revokeToken
setAvailableProductSet
به روز رسانی کنید

حساب‌های Google Play مدیریت شده

دو نوع حساب Google Play مدیریت شده وجود دارد:

حساب کاربری
دسترسی یک کاربر به Google Play مدیریت شده را از همه دستگاه های خود فراهم می کند. شما باید حساب‌های کاربری را برای کاربران خود فراهم کنید—آنها اعتبار لازم برای اضافه کردن حساب‌های مدیریت‌شده Google Play را ندارند.
برای ایجاد یک حساب کاربری، با Users.insert تماس بگیرید. نوع حساب را روی userType تنظیم کنید و یک accountIdentifier تنظیم کنید که به طور منحصر به فرد به کاربر در سازمان ارجاع دهد.
بهترین روش : از یک حساب در بیش از 10 دستگاه استفاده نکنید.
حساب دستگاه
دسترسی به Google Play مدیریت شده را از یک دستگاه فراهم می کند. اگر یک رمز احراز هویت برای یک حساب دستگاه صادر شده باشد، یک درخواست جدید برای یک نشانه احراز هویت برای آن حساب دستگاه، رمز قبلی را غیرفعال می کند. هر دستگاه باید مجوزهای جداگانه خود را برای برنامه ها داشته باشد.
برای ایجاد حساب دستگاه، با Users.insert تماس بگیرید و نوع حساب را روی deviceType تنظیم کنید.

شما یک نقشه بین هویت کاربر یا دستگاه و حساب‌های مدیریت شده Google Play مربوطه ایجاد و نگهداری می‌کنید و حساب‌ها را در طول چرخه عمرشان مدیریت می‌کنید. سازمان نیازی به کنترل مستقیم روی این حساب‌های مدیریت‌شده Google Play ندارد، زیرا این حساب‌ها صرفاً برای مدیریت برنامه‌ها وجود دارند.

الزامات برای کنسول ها و سرورهای EMM

حساب‌های مدیریت‌شده Google Play بر اساس درخواست، به‌صورت برنامه‌ریزی، با استفاده از APIهای Google Play EMM و APIهای چارچوب Android در اجزای راه‌حل EMM شما (کنسول EMM، سرور EMM و DPC) ایجاد می‌شوند. این اجزا در زمان اجرا برای ایجاد یک حساب کاربری و ارائه نمایه کاری در دستگاه مورد نظر با هم تعامل دارند.

کنسول یا سرور EMM شما باید:

  • مکانیزمی برای ایجاد شناسه‌های حساب ناشناس منحصر به فرد (فیلد accountIdentifier ) ​​برای استفاده در تماس با Users.insert ارائه کنید. برای مثال، ممکن است از مقداری داخلی برای کاربر ("sanjeev237389") یا یک شماره برچسب دارایی مرموز ("دارایی#44448") استفاده کنید. از استفاده از اطلاعات شناسایی شخصی (PII) برای شناسه حساب خودداری کنید.

  • نگاشت بین userId (برگردانده شده از insert تماس) و accountIdentifier که انتخاب کرده اید ذخیره کنید.

برای الزامات مربوط به DPC خود، به ساخت کنترلر خط مشی دستگاه مراجعه کنید.

یک حساب کاربری مدیریت شده در Google Play ایجاد کنید

  1. یک کاربر با استفاده از (معمولا) اعتبار شرکتی وارد DPC شما می شود.
  2. DPC جزئیات مربوط به کاربر را از سرور یا کنسول EMM درخواست می کند. با فرض اینکه کاربر برای سیستم شما ناشناخته است:
    1. با تماس با Users.insert با مقادیر مربوط به accountIdentifier ، displayName و accountType جدید، درخواست حساب مدیریت شده Google Play را ارسال کنید.
      • سیستم شما باید accountIdentifier ایجاد کند. شناسه حساب باید یک مقدار منحصر به فرد در سراسر سیستم شما باشد. از PII برای شناسه حساب استفاده نکنید.
      • displayName در تغییردهنده حساب Google Play Store نشان داده می‌شود و باید برای کاربر معنی داشته باشد (اما نه PII در مورد کاربر). به عنوان مثال، نام می تواند شامل نام سازمان یا نام عمومی مربوط به EMM باشد.
      • accountType را روی userAccount یا deviceAccount تنظیم کنید. یک userAccount می توان در چندین دستگاه استفاده کرد، در حالی که یک deviceAccount مختص یک دستگاه واحد است. accountType مشخص شده می تواند deviceType یا userType باشد.
      • managementType را روی emmManaged قرار دهید.
    2. Google Play درخواست را پردازش می‌کند، حساب ایجاد می‌کند و userId برمی‌گرداند.
    3. نقشه بین accountIdentifier و userId را در datastore خود ذخیره کنید.
    4. Users.generateAuthenticationToken با userId و enterpriseId فراخوانی کنید. Google Play یک رمز احراز هویت را برمی گرداند که می تواند یک بار استفاده شود و باید در عرض چند دقیقه استفاده شود.
    5. رمز احراز هویت را ایمن به DPC خود فوروارد کنید.
  3. DPC نمایه کاری را ارائه می کند و حساب را به نمایه کاری یا دستگاه اضافه می کند.
  4. کاربر می تواند در نمایه کاری یا دستگاه به Google Play مدیریت شده دسترسی داشته باشد.

حساب های مدیریت

وقتی سرپرستی با حساب‌های مدیریت‌شده Google Play شرکتی ایجاد می‌کند ، حساب Google که استفاده می‌کند نمی‌تواند یک حساب G Suite باشد. حسابی که آنها استفاده می‌کنند مالک شرکت می‌شود و مالک می‌تواند مالکان و سرپرستان بیشتری را در کنسول مدیریت‌شده Google Play اضافه کند.

هر دو Enterprises.get و Enterprises.completeSignup فهرستی از آدرس‌های ایمیل سرپرست مرتبط با یک شرکت را برمی‌گردانند (شرکت‌هایی که فقط حساب‌های Google Play مدیریت شده دارند).

چرخه عمر حساب را مدیریت کنید

در استقرار حساب‌های Google Play مدیریت شده، شما مسئول چرخه عمر حساب کاربر و دستگاه هستید، به این معنی که این حساب‌ها را ایجاد، به‌روزرسانی و حذف می‌کنید.

شما حساب‌ها را در حین تهیه دستگاه ایجاد می‌کنید، فرآیندی که شامل برنامه DPC و کنسول EMM شما می‌شود. برای دستورالعمل‌ها، روش حساب‌های مدیریت شده Google Play را ببینید.

برای تغییر اطلاعات حساب، با Users.update تماس بگیرید.

برای حذف یک حساب کاربری، با Users.delete تماس بگیرید.

سرپرست‌ها نمی‌توانند حساب‌های فردی را حذف کنند، اما می‌توانند شرکتی را با حساب‌های مدیریت‌شده Google Play حذف کنند. هنگامی که آنها این کار را انجام می دهند، دستگاه و حساب های کاربری مرتبط با شرکت در نهایت حذف می شوند، همانطور که در Unenroll توضیح داده شده است، دوباره ثبت نام کنید، حذف کنید .

انقضای حساب

گاهی اوقات حساب‌ها یا توکن‌های آنها منقضی می‌شوند، که ممکن است به دلایلی اتفاق بیفتد:

  • رمز احراز هویت که برای افزودن حساب به دستگاه به دست آمده بود منقضی شده است.
  • حساب یا شرکت حذف شده است.
  • برای حساب‌های دستگاه، حساب به دستگاه جدیدی اضافه شده است و بنابراین در دستگاه قدیمی غیرفعال می‌شود.
  • بررسی های خودکار سوء استفاده آغاز می شود.
  • اگر دستگاهی بیش از 270 روز آفلاین باشد، ممکن است به دلیل فرآیند پاکسازی دسته ای، اطلاعات آن حذف شود.

در اکثر موارد (مگر اینکه EMM عمداً یک حساب دستگاه را به دستگاه جدیدی منتقل کند)، بهترین روش استفاده از Play EMM API برای درخواست یک رمز جدید از سرور EMM، یادداشت وضعیت حساب و شرکت و هرگونه خطای برگشتی و سپس انجام اقدامات مناسب در دستگاه است. برای مثال، رمز را تمدید کنید، یا اگر خطا قابل بازیابی نیست، دستگاه را بازنشانی یا لغو ثبت کنید.

برای تمدید صحیح توکن باید:

  1. با users.generateAuthenticationToken تماس بگیرید تا یک رمز احراز هویت جدید برای حساب درخواست کنید.
  2. اگر تماس با موفقیت انجام شد، حساب موجود را حذف کنید و با استفاده از کتابخانه پشتیبانی DPC حساب جدید را اضافه کنید.
  3. اگر تماس ناموفق بود، حساب را از دستگاه حذف کنید و یک کاربر جدید با استفاده از users.insert ایجاد کنید، یک کد تأیید اعتبار ایجاد کنید و حساب را به دستگاه اضافه کنید.

خدمات Google Play نسخه 9.0.00 به DPC شما اطلاع می دهد که حساب با استفاده از اقدام پخش منقضی شده است:

  1. وقتی حساب مدیریت‌شده Google Play در دستگاهی باطل می‌شود، DPC پخشی را با عملکرد زیر دریافت می‌کند:

    com.google.android.gms.auth.ACCOUNT_REAUTH_REQUIRED

    هدف پخش حاوی یک اضافی Parcelable با نام account است که شیء Account حساب باطل شده است.

  2. DPC Account#name با سرور EMM بررسی می کند تا حساب باطل شده را شناسایی کند.

  3. DPC یا اعتبار جدید یا یک حساب جدید را درخواست می کند، به دنبال همان جریانی که در ابتدا برای تهیه دستگاه استفاده می شد.


حساب های گوگل

برای سازمان‌هایی که از حساب‌های Google استفاده می‌کنند، حساب‌های کاربری در راه‌حل EMM، حساب‌های کاربری موجود مرتبط با سرویس Google دیگر (مثلاً G Suite) را منعکس می‌کند. این حساب‌ها googleManaged هستند ( جدول 1 ) زیرا خدمات پشتیبان Google منبع ایجاد حساب و اطلاعات مربوط به آن هستند.

به‌عنوان یک EMM، می‌توانید با استفاده از ابزارهایی مانند Google Cloud Directory Sync (GCDS) و Google Admin SDK Directory API، مکانیسم‌هایی را در کنسول خود برای تسهیل ایجاد و همگام‌سازی مداوم حساب‌های کاربری موجود در سیستم خود با منابع حساب دامنه Google آنها فراهم کنید. برای مروری بر رویکردهای مختلف مدل هویت دامنه مدیریت‌شده توسط Google مستلزم آن است که حساب کاربری در زمینه راه‌حل شما (کنسول EMM، سرور EMM، شاید در یک فروشگاه داده) وجود داشته باشد، قبل از اینکه بتوان آن را در هر یک از دستگاه‌های کاربر در چارچوب نمایه کاری ارائه کرد.

در طول ارائه هویت، دامنه مدیریت شده توسط Google سازمان با حساب های کاربری پر می شود. در برخی موارد، هویت‌های آنلاین موجود کاربران (به عنوان مثال، حساب‌های Microsoft Exchange آنها) با حساب‌های Google آنها همگام‌سازی می‌شود.

پس از همگام‌سازی اولیه، اما قبل از اینکه برنامه‌ها در دستگاه کاربر توزیع شوند، کاربر باید حساب Google خود را فعال کند، همانطور که در فعال کردن حساب‌ها در دستگاه‌ها توضیح داده شده است. این فعال‌سازی به دستگاه امکان می‌دهد به Google Play مدیریت شده دسترسی پیدا کند.

همگام سازی حساب های مشتری

در استقرار حساب‌های Google، سازمان می‌تواند از ابزار GCDS برای همگام‌سازی داده‌های دامنه G Suite خود با داده‌های فهرست LDAP خود استفاده کند. از طرف دیگر، اگر سازمان به شما اجازه دسترسی بدهد، می‌توانید از GCDS برای انجام این کار از طرف سازمان استفاده کنید.

ابزار GCDS Google Directory API را فراخوانی می‌کند و نام‌های کاربری را همگام‌سازی می‌کند، اما رمزهای عبور را نه.

اگر سازمانی از Microsoft Active Directory استفاده می‌کند و می‌خواهد گذرواژه‌های G Suite کاربران را با گذرواژه‌های Active Directory همگام نگه دارد، آن‌ها – یا شما – می‌توانند از ابزار G Suite Password Sync (GSPS) با GCDS استفاده کنند.

برای دستورالعمل‌های GCDS برای سرپرستان، به آماده‌سازی دامنه G Suite برای همگام‌سازی مراجعه کنید.

Google Directory API

در استقرار حساب‌های Google، می‌توانید از Google Directory API برای همگام‌سازی دایرکتوری‌های فعال، گذرواژه‌ها یا هر دو استفاده کنید:

  • استفاده از Directory API برای همگام سازی فقط دایرکتوری. اگر به دامنه Google مدیریت شده سازمان دسترسی فقط خواندنی دارید، می‌توانید از Google Directory API برای دریافت اطلاعات حساب Google، مانند نام‌های کاربری (اما نه گذرواژه) از Google استفاده کنید. از آنجایی که نمی‌توانید هیچ داده‌ای را در حساب‌های Google کاربران بنویسید، سازمان مسئولیت کامل چرخه عمر حساب را بر عهده دارد.

    سناریو 1 و سناریوهای احراز هویت SSO مبتنی بر SAML این وضعیت را کاملتر توصیف می کنند.

    برای اطلاعات در مورد استفاده از Directory API به این روش، به بازیابی همه کاربران حساب در اسناد Directory API مراجعه کنید.

  • استفاده از Directory API برای همگام سازی دایرکتوری و رمز عبور اختیاری. اگر به دامنه Google مدیریت شده سازمان دسترسی خواندن و نوشتن دارید، می‌توانید از Google Directory API برای دریافت نام‌های کاربری، گذرواژه‌ها و سایر اطلاعات حساب Google استفاده کنید. می‌توانید این اطلاعات را به‌روزرسانی کرده و با پایگاه داده خود همگام‌سازی کنید، و ممکن است مسئولیت کامل یا جزئی چرخه عمر حساب، بسته به راه‌حلی که به مشتری خود ارائه می‌دهید، داشته باشید.

    سناریوی 2 این وضعیت را کاملتر توصیف می کند.

    برای اطلاعات بیشتر در مورد استفاده از Directory API برای مدیریت اطلاعات حساب کاربری، به راهنمای برنامه‌نویس Directory API: User Accounts مراجعه کنید.

سناریوهای حساب های Google

چند سناریو معمولی برای تامین هویت حساب‌های Google در زیر توضیح داده شده است.

سناریوی 1: مشتری مسئول چرخه عمر حساب است

با استفاده از Directory API (با دسترسی فقط خواندنی) و GCDS

در این سناریو، مشتری شما حساب های گوگل را برای کاربران خود ایجاد و نگهداری می کند.

اطلاعات حساب کاربری را از دایرکتوری LDAP سازمان دریافت می‌کنید و این اطلاعات را با داده‌های حساب Google که از Google از طریق Google Directory API دریافت می‌کنید، مرتبط می‌کنید.

سازمان مسئولیت کامل چرخه عمر حساب را بر عهده دارد. به عنوان مثال، هنگامی که یک حساب Google جدید ایجاد می شود، سازمان کاربر را به فهرست LDAP خود اضافه می کند. دفعه بعد که پایگاه داده خود را با دایرکتوری LDAP همگام می کنید، پایگاه داده شما اطلاعاتی درباره این کاربر جدید دریافت می کند.

در این سناریو:

  • شما به حساب‌های Google دسترسی فقط خواندنی دارید.
  • پایگاه داده شما نام حساب Google را دریافت می کند، اما نام کاربری یا رمز عبور LDAP ندارد.
  • شما از Google Directory API برای دریافت اطلاعات اولیه حساب برای کاربران مشتری خود استفاده می کنید. (اطلاعات در دسترس شما اطلاعات غیرقابل نوشتنی است که توسط درخواست Users.get برگردانده می شود ). شما از این اطلاعات برای تأیید وجود حساب‌های Google کاربران استفاده می‌کنید تا کاربران بتوانند در دستگاه‌های خود احراز هویت کنند.
  • مشتری شما از ابزار GCDS برای همگام سازی یک طرفه برای پر کردن حساب های Google کاربران استفاده می کند. (احتمالاً سازمان از GCDS برای همگام سازی مداوم خود پس از تکمیل تهیه هویت استفاده می کند.) به صورت اختیاری، سازمان همچنین می تواند از ابزار GSPS برای همگام سازی نه تنها نام های کاربری، بلکه رمزهای عبور نیز استفاده کند.

سناریو 2: EMM مسئول چرخه عمر حساب است

استفاده از Directory API با   دسترسی خواندن و نوشتن

در این سناریو، شما فرآیند ایجاد حساب‌های Google را از طرف مشتری خود انجام می‌دهید و مسئولیت چرخه عمر حساب کاربران را بر عهده دارید.

به عنوان مثال، هنگامی که اطلاعات کاربر در فهرست LDAP سازمان تغییر می کند، شما مسئول به روز رسانی حساب Google کاربر هستید. GCDS در این سناریو استفاده نمی شود.

در این سناریو:

  • شما به حساب‌های Google دسترسی خواندن و نوشتن دارید.
  • پایگاه داده شما نام‌های حساب Google و نام‌های کاربری LDAP (و در صورت اختیاری، درهم‌سازی رمز عبور) را دریافت می‌کند.
  • شما از Google Directory API از طرف مشتری خود برای خواندن و نوشتن اطلاعات حساب برای کاربران سازمان استفاده می کنید. (اطلاعات در دسترس شما اطلاعات غیرقابل نوشتنی است که توسط درخواست Users.get برگردانده می شود ). شما از این اطلاعات برای تأیید وجود حساب‌های Google کاربران استفاده می‌کنید تا کاربران بتوانند در دستگاه‌های خود احراز هویت کنند.
  • ابزار GCDS استفاده نمی شود.

سناریوهای احراز هویت SSO مبتنی بر SAML

در استقرار حساب‌های Google، شما یا مشتری‌تان ممکن است از زبان نشانه‌گذاری ادعای امنیتی (SAML) با ارائه‌دهنده هویت (IdP) برای احراز هویت حساب Google مرتبط با هر کاربر استفاده کنید. شما از نام‌های حساب Google به‌عنوان تأیید وجود حساب‌های Google کاربران استفاده می‌کنید، که برای احراز هویت کاربر هنگام ورود کاربران به دستگاه‌های خود مورد نیاز است. برای مثال، SAML را می‌توان در سناریو 2 استفاده کرد. برای جزئیات در مورد نحوه راه‌اندازی، به راه‌اندازی یک ورود به سیستم (SSO) برای حساب‌های G Suite مراجعه کنید.

فعال کردن حساب ها در دستگاه ها

برای اینکه برنامه ها از طریق Google Play مدیریت شده در یک دستگاه کاربر توزیع شوند، کاربر باید در حین تهیه دستگاه وارد دستگاه شود:

  • در تهیه دستگاه حساب‌های Google Play مدیریت شده ، DPC شما کاربر را راهنمایی می‌کند تا با استفاده از اعتبارنامه‌های پذیرفته‌شده توسط کنسول EMM شما، که معمولاً اطلاعات کاربری ایمیل شرکتی است، به سیستم وارد شود.
  • در استقرار حساب‌های Google، DPC شما کاربر را راهنمایی می‌کند تا اعتبارنامه ورود به حساب Google خود را وارد کند. معمولاً این اعتبارنامه‌ها با مواردی مطابقت دارند که کاربران هنگام همگام‌سازی با GCDS یا GSPS، یا زمانی که سازمانی از یک IdP برای احراز هویت استفاده می‌کند، به دامنه شرکتی خود وارد می‌شوند. این کار حساب Google کاربر را فعال می کند، یک شناسه دستگاه منحصر به فرد ایجاد می کند و هویت حساب Google کاربر و شناسه دستگاه دستگاه او را متصل می کند.