أسرار العملاء

تستخدم مكتبة برامج Google APIs لنظام NET .ملفات client_secrets.json لتخزين client_id وclient_secret ومَعلمات OAuth 2.0 الأخرى.

وملف client_secrets.json هو ملف بتنسيق JSON يحتوي على معرّف العميل وسر العميل ومعلَمات OAuth 2.0 الأخرى. إليك مثال على ملف client_secrets.json لتطبيق ويب:

{
  "web": {
    "client_id": "asdfjasdljfasdkjf",
    "client_secret": "1912308409123890",
    "redirect_uris": ["https://www.example.com/oauth2callback"],
    "auth_uri": "https://accounts.google.com/o/oauth2/auth",
    "token_uri": "https://accounts.google.com/o/oauth2/token"
  }
}

إليك مثال على ملف client_secrets.json لتطبيق مثبَّت:

{
  "installed": {
    "client_id": "837647042410-75ifg...usercontent.com",
    "client_secret":"asdlkfjaskd",
    "redirect_uris": ["http://localhost"],
    "auth_uri": "https://accounts.google.com/o/oauth2/auth",
    "token_uri": "https://accounts.google.com/o/oauth2/token"
  }
}

يحدّد التنسيق أحد نوعَي معرِّف العميل:

  • web: تطبيق الويب
  • installed: تطبيق مثبَّت.

يحتوي العنصران الفرعيان web وinstalled على العناصر الإلزامية التالية:

  • client_id (سلسلة): معرِّف العميل.
  • client_secret (سلسلة): سر العميل.

وتكون جميع العناصر الأخرى في هذا الملف اختيارية ولا تستخدمها مكتبة برامج .NET

الحافز

تقليديًا، توقّع مزوّدو نقاط نهاية OAuth 2.0 من مستخدمي خدماتهم نسخ ولصق معرّف العميل وسر العميل من صفحة التسجيل ليتم تحويلهما إلى رمز صالح. هذه الطريقة عرضة للأخطاء وتقدم صورة غير كاملة للمعلومات المطلوبة لتشغيل OAuth 2.0. (يتطلب بروتوكول OAuth 2.0 أيضًا معرفة جميع نقاط النهاية، وإعداد معرّف موارد منتظم (URI) لإعادة التوجيه). إذا كان مقدمو الخدمة يوفرون ملفات client_secrets.json قابلة للتنزيل، وكانت مكتبات العملاء جاهزة لاستخدام هذه الملفات، سيكون تنفيذ OAuth 2.0 أسهل وأقل عرضة للخطأ.