الأسئلة الشائعة حول Amazon Cognito

عام

تتيح لك Amazon Cognito إضافة تسجيل المستخدم وتسجيل الدخول والتحكم في الوصول والوصول إلى خدمة AWS بوساطة إلى تطبيقات الويب والهاتف المحمول في غضون دقائق. إنها خدمة تركز على المطور وفعالة من حيث التكلفة وتوفر مخازن هوية آمنة قائمة على المستأجر وخيارات الاتحاد التي يمكن أن تتسع لملايين المستخدمين. تساعدك Amazon Cognito على إنشاء تجارب عملاء ذات علامة تجارية وتحسين الأمان والتكيف مع احتياجات عملائك. على سبيل المثال، يدعم تسجيل الدخول باستخدام موفري الهوية الاجتماعية وتسجيل الدخول بدون كلمة مرور باستخدام مفاتيح مرور WebAuthn أو الرسائل القصيرة والبريد الإلكتروني وكلمات المرور لمرة واحدة. تدعم Amazon Cognito معايير الامتثال المختلفة، وتعمل وفقًا لمعايير الهوية المفتوحة، وتتكامل مع كتالوج شامل لموارد التطوير ومكتبات SDK.

باستخدام Amazon Cognito، يمكنك التركيز على إنشاء تجارب تطبيقات رائعة بدلاً من القلق بشأن إنشاء حل وتأمينه وتوسيع نطاقه للتعامل مع إدارة المستخدم والمصادقة.

يمكنك البدء بسهولة من خلال زيارة وحدة تحكم AWS. إذا لم يكن لديك حساب Amazon Web Services، يمكنك إنشاء حساب عند تسجيل الدخول إلى وحدة التحكم. بمجرد إنشاء مجموعة مستخدمين لإدارة المستخدمين أو تجمع هوية للهويات الموحدة، يمكنك دمج التطبيق وواجهات برمجة التطبيقات (APIs) مع OAuth وOpenID Connect ‏(OIDC).

راجع موارد بدء الاستخدام للحصول على مزيد من المعلومات.

تم تصميم Amazon Cognito للمطورين الذين يرغبون في إضافة وظائف إدارة المستخدم والمزامنة إلى تطبيقات الهاتف المحمول والويب الخاصة بهم. يمكن للمطورين استخدام Cognito Identity لإضافة الاشتراك وتسجيل الدخول إلى تطبيقاتهم وتمكين المستخدمين من الوصول بأمان إلى موارد تطبيقاتهم. يتيح Cognito أيضًا للمطورين مزامنة البيانات عبر الأجهزة والأنظمة الأساسية والتطبيقات.

نعم. يعرض Cognito واجهات برمجة التطبيقات (APIs) من جانب الخادم. يمكنك إنشاء واجهة مخصصة خاصة بك لـ Cognito عن طريق استدعاء واجهات برمجة التطبيقات (APIs) هذه مباشرة. يتم وصف واجهات برمجة التطبيقات (APIs) من جانب الخادم في دليل المطور.

يتم تضمين دعم Cognito في حزمة AWS Mobile SDK الاختيارية، والتي تتوفر لنظامي التشغيل iOS وAndroid وUnity وKindle Fire. يتوفر Cognito أيضًا في AWS SDK for .NET وC++ وGo وJava وJavaScript وPHP v3 وPython وRuby v3 وواجهة سطر الأوامر.

قم بزيارة صفحة الموارد لعرض وتنزيل حزم SDK المتاحة.

لا. يعرض Cognito واجهات برمجة التطبيقات الخاصة بالتحكم والبيانات كخدمات ويب. يمكنك تنفيذ مكتبة العميل الخاصة بك باستدعاء واجهات برمجة التطبيقات (APIs) من جانب الخادم مباشرة.

إضافة الاشتراك وتسجيل الدخول إلى تطبيقات الويب والهاتف المحمول

بالنسبة لمصادقي العامل الأول، يدعم Amazon Cognito اسم المستخدم/كلمة المرور والبريد الإلكتروني OTP بدون كلمة مرور وSMS OTP بدون كلمة مرور ومفاتيح مرور WebAuthn. يدعم Cognito أدوات المصادقة متعددة العوامل التالية (MFA): مصادقة البريد الإلكتروني OTP وSMS OTP وTOTP. بالإضافة إلى ذلك، يمكن للعملاء والشركاء تنفيذ الدعم لمنتجات الجهات الخارجية والمصادقين المخصصين من خلال تدفقات المصادقة المخصصة، باستخدام ملحقات AWS Lambda.

نعم، يمكنك بسهولة وأمان إضافة وظيفة التسجيل وتسجيل الدخول إلى تطبيقاتك باستخدام Amazon Cognito. يمكن للمستخدمين الاشتراك وتسجيل الدخول باستخدام البريد الإلكتروني أو رقم الهاتف أو اسم المستخدم. يمكنك أيضًا تنفيذ ميزات الأمان المحسّنة، مثل التحقق من البريد الإلكتروني والتحقق من رقم الهاتف والمصادقة متعددة العوامل. تتيح لك Cognito أيضًا تخصيص سير العمل عن طريق، على سبيل المثال، إضافة منطق خاص بالتطبيق إلى تسجيل المستخدم للكشف عن الاحتيال والتحقق من المستخدم من خلال AWS Lambda. لمعرفة المزيد، تفضل بزيارة المستندات.

تجمع المستخدمين هو دليل مستخدم قائم على المستأجر يمكنك تكوينه لتطبيقات الويب والجوال. تقوم مجموعة المستخدمين بتخزين سمات ملف تعريف المستخدمين بشكل آمن وتدعم مخططًا مخصصًا. يمكنك إنشاء مجموعة مستخدمين وإدارتها باستخدام وحدة تحكم AWS أو AWS CLI أو AWS SDK.

يمكن للمطورين استخدام سمات ملف تعريف المستخدم القياسية المستندة إلى OpenID Connect (مثل اسم المستخدم ورقم الهاتف والعنوان والمنطقة الزمنية وما إلى ذلك) أو التخصيص لإضافة سمات المستخدم الخاصة بالتطبيق.

نعم، يمكنك استخدام ميزة الاسم المستعار لتمكين المستخدمين من التسجيل أو تسجيل الدخول باستخدام عنوان بريد إلكتروني وكلمة مرور أو رقم هاتف وكلمة مرور.

لمعرفة المزيد، تفضل بزيارة المستندات.

 

نعم، يمكنك إعداد سياسات كلمات المرور، مثل طول كلمة المرور وتعقيد الأحرف ومتطلبات سجل كلمات المرور عند إعداد مجموعة المستخدمين أو تكوينها. بالإضافة إلى ذلك، يدعم Amazon Cognito التحقق من بيانات الاعتماد المخترقة عند تسجيل كل مستخدم وتسجيل الدخول وتغيير كلمة المرور لضمان عدم قيام المستخدمين بتسجيل الدخول باستخدام كلمة مرور تم اختراقها في موقع آخر.

نعم، باستخدام Amazon Cognito، يمكنك أن تطلب التحقق من عناوين البريد الإلكتروني وأرقام الهواتف للمستخدمين قبل منحهم حق الوصول إلى تطبيقك. أثناء التسجيل، سيتم إرسال رمز التحقق إلى رقم هاتف المستخدم أو عنوان بريده الإلكتروني، ويجب على المستخدم إدخال رمز التحقق لإكمال التسجيل والتأكيد.

نعم، يمكنك تمكين المستخدمين النهائيين لتطبيقك من تسجيل الدخول باستخدام MFA المستند إلى الرسائل القصيرة (SMS). مع تمكين MFA المستند إلى الرسائل القصيرة (SMS)، ستتم مطالبة المستخدمين بكلمة المرور الخاصة بهم (العامل الأول - ما يعرفونه)، ورمز الأمان الذي لا يمكن تلقيه إلا على هواتفهم المحمولة عبر الرسائل القصيرة (العامل الثاني - ما لديهم).

نعم، يمكنك تخصيص تدفقات الاشتراك وتسجيل الدخول باستخدام AWS Lambda. على سبيل المثال، يمكنك إنشاء وظائف AWS Lambda لتحديد الاحتيال أو إجراء عمليات تحقق إضافية على بيانات المستخدم. يمكنك تشغيل وظائف Lambda المخصصة عند التسجيل المسبق والتأكيد اللاحق (التسجيل) والمصادقة المسبقة وأثناء المصادقة وبعد المصادقة. يمكنك أيضًا استخدام وظائف Lambda لتخصيص الرسائل المرسلة كجزء من التحقق من البريد الإلكتروني أو رقم الهاتف والمصادقة متعددة العوامل.

نعم، يمكنك اختيار تذكر الأجهزة المستخدمة للوصول إلى تطبيقك، وتقوم بربط هذه الأجهزة التي تم تذكرها بمستخدمي التطبيق الخاص بك في مجموعة مستخدمي Cognito. يمكنك أيضًا اختيار استخدام الأجهزة التي تم تذكرها لقمع تحديات العامل الثاني (المصادقة التكيفية) للمستخدمين عند إعداد المصادقة متعددة العوامل.

هناك طريقتان يمكنك من خلالهما ترحيل المستخدمين من دليل المستخدم أو قاعدة البيانات الحالية لتطبيقك إلى مجموعات المستخدمين: الترحيل في الوقت المناسب (JIT) والترحيل المجمع.

يساعدك Amazon Cognito على ترحيل المستخدمين في الوقت الفعلي أثناء تسجيل الدخول إلى تطبيقك باستخدام مشغل AWS Lambda المدمج. يتيح لك مشغل Lambda ترحيل بيانات المستخدمين من نظام خارجي دون إجبارهم على إعادة تعيين كلمة المرور.

بدلاً من ذلك، يمكنك ترحيل المستخدمين بشكل مجمّع عن طريق تحميل ملف CSV يحتوي على بيانات الملف الشخصي لجميع مستخدمي التطبيق. يمكنك تحميل ملف CSV من خلال وحدة تحكم Amazon Cognito أو واجهات برمجة التطبيقات (APIs) أو AWS CLI. عند تسجيل الدخول لأول مرة، يجب على المستخدمين التحقق من حساباتهم وإنشاء كلمة مرور جديدة باستخدام رمز التحقق المرسل إلى عنوان بريدهم الإلكتروني أو رقم هاتفهم.

لمعرفة المزيد، راجع استيراد المستخدمين إلى مجموعات المستخدمين.

تمكين الوصول إلى موارد AWS

نعم، تتيح لك مجموعات هوية Cognito مصادقة المستخدمين من خلال مزود هوية خارجي وتوفر بيانات اعتماد أمان مؤقتة للوصول إلى موارد الواجهة الخلفية لتطبيقك في AWS أو أي خدمة خلف بوابة Amazon API. يعمل Amazon Cognito مع موفري الهوية الخارجيين الذين يدعمون SAML أو OpenID Connect وموفري الهوية الاجتماعية (مثل Facebook وTwitter وAmazon) ويمكنك أيضًا دمج مزود الهوية الخاص بك.

يمكنك استخدام Amazon وFacebook وTwitter وتسجيل الدخول باستخدام Apple وموفري الهوية الاجتماعية من Google وموفري هوية OpenID Connect‏ (OIDC) وموفري هوية SAML ومجموعات مستخدمي Amazon Cognito وموفري المطورين المخصصين.

تتيح لك مجموعات الهوية إنشاء هويات فريدة للمستخدمين وتوحيدها بأمان مع موفري خدمة AWS. يستفيد العملاء من مجموعات هوية Amazon Cognito كوسيط اعتماد للحصول على بيانات اعتماد AWS ذات الامتياز المؤقت والمحدود للوصول إلى موارد AWS.

يمكن للمستخدمين تسجيل الدخول عبر مجموعات مستخدمي Amazon Cognito أو موفري هوية OIDC أو موفري هوية SAML أو موفري الهوية الاجتماعية والحصول على وصول قائم على الأدوار إلى خدمات AWS، مثل حاويات Amazon S3 أو سجلات Amazon DynamoDB. لا تقوم مجموعات الهوية (Identity Pool) بتخزين أي ملفات تعريف للمستخدمين. يمكن ربط مجموعة الهويات بتطبيق واحد أو العديد من التطبيقات. إذا كنت تستخدم مجموعتي هوية مختلفتين لتطبيقين، فسيكون لدى المستخدم النهائي نفسه معرف فريد مختلف في كل مجموعة الهويات (Identity Pool).

يقوم تطبيق الهاتف المحمول الخاص بك بالمصادقة مع مُزوِّد الهوية (IdP) باستخدام SDK الخاص بالموفر. بمجرد مصادقة المستخدم النهائي مع IdP، يتم تمرير رمز OpenID Connect أو تأكيد SAML الذي تم إرجاعه من IdP بواسطة تطبيقك إلى مجموعات هوية Cognito، والذي يقوم بإرجاع معرف Cognito ID الجديد للمستخدم ومجموعة من بيانات اعتماد AWS المؤقتة ذات الامتياز المحدود.

يمكن أن تتكامل مجموعات هوية Cognito مع نظام المصادقة الحالي لديك. باستخدام استدعاء API بسيطة، يمكنك استرداد معرف Cognito ID للمستخدمين النهائيين بناءً على المعرف الفريد الخاص بك للمستخدمين. بمجرد استرداد معرف Cognito ورمز OpenID، يمكنك استخدام مجموعة تطوير البرمجيات (SDK) لعميل مجموعات هوية Cognito للوصول إلى موارد AWS ومزامنة بيانات المستخدم.

تقوم مجموعات هوية Cognito بتعيين المستخدمين لديك مجموعة من بيانات اعتماد الامتياز المؤقتة والمحدودة للوصول إلى موارد AWS الخاصة بك حتى لا تضطر إلى استخدام بيانات اعتماد حساب AWS الخاص بك. يتم التحكم في الأذونات لكل مستخدم من خلال أدوار AWS IAM التي تقوم بإنشائها. يمكنك تحديد قواعد لاختيار دور IAM لكل مستخدم، أو إذا كنت تستخدم مجموعات في تجمع مستخدمي Cognito، يمكنك تعيين أدوار IAM استنادًا إلى المجموعات. تسمح لك مجموعات هوية Cognito أيضًا بتحديد دور IAM منفصل مع أذونات محدودة للمستخدمين الضيوف الذين لم تتم مصادقتهم. بالإضافة إلى ذلك، يمكنك استخدام المعرف الفريد الذي ينشئه Cognito للمستخدمين للتحكم في الوصول إلى موارد محددة. على سبيل المثال، يمكنك إنشاء سياسة لحاوية S3 تسمح فقط لكل مستخدم بالوصول إلى المجلد الخاص به داخل المجموعة.

لا، يتواصل تطبيقك مباشرةً مع موفر الهوية العامة المدعوم (Amazon أو Facebook أو Twitter أو تسجيل الدخول باستخدام Apple أو Google أو SAML أو موفر متوافق مع Open ID Connect) لمصادقة المستخدمين. لا تتلقى Cognito Identity بيانات اعتماد المستخدم أو تخزنها. يستخدم Cognito Identity الرمز المميز من موفر الهوية للحصول على معرف فريد للمستخدم ثم يقوم بتجزئته باستخدام تجزئة أحادية الاتجاه بحيث يمكن التعرف على نفس المستخدم مرة أخرى في المستقبل دون تخزين معرف المستخدم الفعلي.

لا. لا تتلقى Cognito Identity أي معلومات سرية (مثل عنوان البريد الإلكتروني وقائمة الأصدقاء وما إلى ذلك) من موفري الهوية.

تدعم مجموعات هوية Cognito عملية الإنشاء وبيع الرموز للمستخدمين غير المصادق عليهم وكذلك المستخدمين المصادق عليهم. يؤدي هذا إلى إزالة احتكاك شاشة تسجيل الدخول الإضافية في تطبيقك، ولكنه لا يزال يمكّنك من استخدام بيانات اعتماد الامتياز المؤقتة والمحدودة للوصول إلى موارد AWS.

لا. تدعم Cognito Identity تسجيل الدخول من خلال Amazon وFacebook وTwitter وDigits وGoogle، بالإضافة إلى توفير الدعم للمستخدمين غير المصادق عليهم. باستخدام Cognito Identity، يمكنك دعم المصادقة الموحدة ومخزن مزامنة بيانات الملف الشخصي وتوزيع رمز الوصول إلى AWS دون كتابة أي رمز خلفي.

المستخدمون غير المصادق عليهم هم المستخدمون الذين لا يقومون بالمصادقة مع أي مزود هوية، ولكن بدلاً من ذلك يصلون إلى تطبيقك كضيف. يمكنك تحديد دور IAM منفصل لهؤلاء المستخدمين لتوفير أذونات محدودة للوصول إلى موارد الواجهة الخلفية الخاصة بك.

نعم، تدعم مجموعات هوية Cognito الهويات المنفصلة على جهاز واحد، مثل iPad العائلي. يتم التعامل مع كل هوية على حدة ولديك تحكم كامل في كيفية تسجيل التطبيق للمستخدمين داخل وخارج وكيفية تخزين بيانات التطبيق المحلية والبعيدة.

يمكنك برمجيًا إنشاء مجموعة بيانات مرتبطة بمجموعات هوية Cognito والبدء في حفظ البيانات في شكل أزواج مفاتيح/قيمة. يتم تخزين البيانات محليًا على الجهاز وفي متجر Cognito sync. يمكن لـ Cognito أيضًا مزامنة هذه البيانات عبر جميع أجهزة المستخدم النهائي.

يوضح لك عدد الهويات في وحدة تحكم مجموعات هوية Cognito عدد الهويات التي تم إنشاؤها عبر واجهات برمجة تطبيقات مجموعات هوية Cognito. بالنسبة للهويات المصادق عليها (أولئك الذين يقومون بتسجيل الدخول باستخدام مزود تسجيل الدخول مثل Facebook أو موفر OpenID Connect)، فإن كل مكالمة إلى GetId API الخاصة بمجموعات الهوية في Cognito لن تؤدي إلا إلى إنشاء هوية واحدة لكل مستخدم. ومع ذلك، بالنسبة للهويات غير المصادق عليها، في كل مرة يقوم فيها العميل في التطبيق باستدعاء GetId API، سيتم إنشاء هوية جديدة. لذلك، إذا كان تطبيقك يستدعي GetId للهويات غير المصادق عليها عدة مرات لمستخدم واحد، فسيظهر أن مستخدمًا واحدًا لديه هويات متعددة. لذلك من المهم أن تقوم بتخزين الاستجابة من GetId مؤقتًا عند استخدام هويات غير مصادق عليها وعدم استدعائها عدة مرات لكل مستخدم.

توفر Mobile SDK المنطق لتخزين مجموعات هوية Cognito تلقائيًا حتى لا تقلق بشأن ذلك. إذا كنت تبحث عن حل تحليلي كامل لتطبيقك، بما في ذلك القدرة على تتبع المستخدمين الفريدين، فيرجى إلقاء نظرة على Amazon Mobile Analytics.

التسعير

لمعرفة أسعار مجموعة مستخدمي Amazon Cognito، يرجى الاطلاع على صفحة تسعير Amazon Cognito.

لحساب التكاليف المقدرة، استخدم حاسبة تسعير AWS

 

أنت تدفع مقابل تجمع مستخدمي Amazon Cognito بناءً على المستخدمين النشطين شهريًا (MAUs). يتم احتساب المستخدم كمستخدم نشط شهريًا (MAU).إذا قام تطبيقك، في غضون شهر تقويمي، بإنشاء عملية هوية لذلك المستخدم، مثل الإنشاء الإداري أو التحديث، أو الاشتراك، أو تسجيل الدخول، أو تسجيل الخروج، أو تحديث الرمز المميز، أو تغيير كلمة المرور، أو تحديث سمة حساب المستخدم، أو استعلام سمة على مستخدم (AdminGetUser API). لا تدفع مقابل الجلسات اللاحقة أو مقابل المستخدمين غير النشطين في ذلك الشهر. عادةً ما يكون إجمالي عدد المستخدمين وكذلك عدد العمليات أكبر بكثير من إجمالي عدد المستخدمين النشطين شهريًا (MAUs).

لمعرفة أسعار Amazon Cognito Sync، يرجى الاطلاع على صفحة تسعير Amazon Cognito.

يتم احتساب تكلفة استخدام رسائل SMS للتحقق من أرقام الهواتف أو لإرسال رموز لكلمات المرور المنسية أو إعادة تعيينها أو للمصادقة متعددة العوامل بشكل منفصل. راجع صفحة تسعير Worldwide SMS لمزيد من المعلومات.

عند استدعاء طريقة المزامنة () باستخدام AWS Mobile SDK، يتم اعتبار ذلك بمثابة عملية مزامنة. إذا كنت تتصل بواجهات برمجة تطبيقات الخادم مباشرةً، فستبدأ عملية المزامنة عند إصدار رمز جلسة مزامنة جديد وتكتمل بكتابة ناجحة أو انتهاء مهلة الرمز المميز للجلسة. سواء كنت تستخدم طريقة المزامنة SDK synchronize () أو تتصل بواجهة برمجة تطبيقات الخادم مباشرةً، يتم تحصيل رسوم عمليات المزامنة بنفس السعر.

نعم، وحدة SKU الخاصة بمجموعة مستخدمي Amazon Cognito وSKU Essentials مجانيان لأول 10000 مستخدم نشط شهريًا (MAUs). حسابات العملاء التي تحتوي على مجموعات مستخدمي Amazon Cognito النشطة قبل 21 نوفمبر/تشرين الثاني 2024 مؤهلة للحصول على المستوى المجاني البالغ 50000 مستخدم نشط شهريًا (MAUs).

في إطار طبقة AWS المجانية، يتلقى عملاء AWS المؤهلون 10 جيجابايت من مخزن مزامنة السحابة و1,000,000 عملية مزامنة في الشهر لأول 12 شهرًا.

يتم توفير استخدام مجموعات هوية Amazon Cognito لمصادقة المستخدمين وإنشاء معرفات فريدة مجانًا.

لا توجد رسوم إضافية لاستخدام Cognito Events لتشغيل مهام Lambda، ولكن سيتم تطبيق الأسعار العادية لاستخدامك لـ AWS Lambda وخدمات AWS الأخرى أثناء تنفيذ مهام Lambda.

يُرجى الاطلاع على صفحة تسعير AWS Lambda لمعرفة التفاصيل.

 

لا. عليك أن تقرر متى تستدعي طريقة المزامنة (). كل عملية تخزين أو قراءة من الجهاز تذهب إلى متجر SQLite المحلي. بهذه الطريقة يمكنك التحكم الكامل في تكاليفك.

Cognito تستخدم Amazon SNS لإرسال إشعارات فورية صامتة. لا توجد رسوم إضافية لاستخدام Cognito للمزامنة الفورية، ولكن سيتم تطبيق أسعار Amazon SNS العادية على الإشعارات المرسلة إلى الأجهزة.