شروع به استفاده از App Check با reCAPTCHA Enterprise در پلتفرم‌های اپل کنید

انتخاب پلتفرم: iOS+ اندروید وب فلاتر


این صفحه به شما نشان می‌دهد که چگونه با استفاده از ارائه‌دهنده reCAPTCHA Enterprise ، App Check در یک برنامه پلتفرم اپل راه‌اندازی کنید. App Check به شما کمک می‌کند تا مطمئن شوید که فقط برنامه شما می‌تواند به منابع backend پروژه شما دسترسی داشته باشد. برای کسب اطلاعات بیشتر، مرور کلی ما در مورد App Check مرور کنید.

App Check نیاز به استفاده از کلیدهای reCAPTCHA مبتنی بر امتیاز دارد، که آن را برای کاربران نامرئی می‌کند. این بدان معناست که ارائه دهنده reCAPTCHA Enterprise از کاربران نمی‌خواهد که در هر زمانی یک چالش را حل کنند.

اگر مورد استفاده شما به ویژگی‌های reCAPTCHA Enterprise نیاز دارد که توسط App Check پیاده‌سازی نشده است، یا اگر می‌خواهید از App Check با ارائه‌دهنده سفارشی خود استفاده کنید، به بخش پیاده‌سازی ارائه‌دهنده سفارشی App Check مراجعه کنید.

۱. پروژه فایربیس خود را راه‌اندازی کنید

  1. اگر هنوز Firebase را به پروژه اپل خود اضافه نکرده‌اید، آن را اضافه کنید .

  2. در کنسول Google Cloud ، به صفحه Fraud Defense بروید و موارد زیر را برای ارائه دهنده reCAPTCHA Enterprise انجام دهید:

    1. مطمئن شوید که در پروژه صحیح هستید (به انتخابگر پروژه در بالای صفحه مراجعه کنید).

    2. در صورت درخواست، رابط برنامه‌نویسی کاربردی reCAPTCHA Enterprise را فعال کنید.

    3. یک کلید از نوع iOS ایجاد کنید و شناسه بسته برنامه خود را مشخص کنید (برای مثال، com.example.my_app ).

      • مطمئن شوید که همان شناسه بسته‌ای را که هنگام ایجاد برنامه Firebase Apple خود ارائه دادید، در پروژه Firebase خود وارد می‌کنید. مقدار شناسه بسته به حروف کوچک و بزرگ حساس است.

      • برای App Check ، هر شناسه بسته فقط می‌تواند با یک کلید reCAPTCHA مطابقت داشته باشد.

      برای دستورالعمل‌های دقیق، به ایجاد کلیدهای reCAPTCHA مبتنی بر امتیاز مراجعه کنید.

    4. این کلید را یادداشت کنید. باید آن را به جریان ثبت‌نام در کنسول Firebase اضافه کنید.

  3. در کنسول Firebase ، به مسیر Security > App Check بروید.

  4. در تب برنامه‌ها ، برنامه‌های پلتفرم اپل خود را برای استفاده App Check با ارائه‌دهنده reCAPTCHA Enterprise ثبت کنید. باید کلیدی را که در کنسول Google Cloud دریافت کرده‌اید، ارائه دهید.

  5. اختیاری : زمان زنده بودن توکن (TTL) را تنظیم کنید.

    در تنظیمات ثبت برنامه، یک زمان دلخواه برای زنده ماندن (TTL) برای توکن‌های App Check صادر شده توسط ارائه دهنده تنظیم کنید. می‌توانید TTL را روی هر مقداری بین 30 دقیقه تا 7 روز تنظیم کنید. هنگام تغییر این مقدار، به موارد زیر توجه داشته باشید:

    • امنیت: TTL های کوتاه تر امنیت قوی تری را فراهم می کنند، زیرا بازه زمانی که یک توکن فاش شده یا رهگیری شده می تواند توسط یک مهاجم مورد سوء استفاده قرار گیرد را کاهش می دهند.
    • عملکرد: هرچه TTL های کوتاه‌تر باشند، برنامه شما دفعات بیشتری عملیات تصدیق را انجام می‌دهد. از آنجایی که فرآیند تصدیق برنامه هر بار که انجام می‌شود، به درخواست‌های شبکه تأخیر اضافه می‌کند، TTL کوتاه می‌تواند بر عملکرد برنامه شما تأثیر بگذارد.
    • سهمیه و هزینه: TTL های کوتاه تر و تأیید مجدد مکرر، سهمیه شما را سریعتر تمام می کند و برای خدمات پولی، احتمالاً هزینه بیشتری دارد. به سهمیه ها و محدودیت ها مراجعه کنید.

    مدت زمان پیش‌فرض TTL برای اکثر برنامه‌ها ۱ ساعت است که معقول به نظر می‌رسد. توجه داشته باشید که کتابخانه App Check تقریباً در نصف مدت زمان TTL، توکن‌ها را به‌روزرسانی می‌کند.

  6. اختیاری : تنظیمات پیشرفته را پیکربندی کنید.

  7. روی ذخیره کلیک کنید.

(اختیاری) پیکربندی تنظیمات پیشرفته

وقتی کاربری برنامه شما را باز می‌کند، reCAPTCHA Enterprise سطح ریسک تعامل کاربر را تحت تأثیر کلیدهای اعمال‌شده ارزیابی می‌کند و امتیازی بین ۰.۰ تا ۱.۰، با گام‌های ۰.۱، برمی‌گرداند.

  • امتیاز ۰.۰ نشان می‌دهد که این تعامل ریسک بالایی دارد و ممکن است کلاهبرداری باشد.
  • امتیاز ۱.۰ نشان می‌دهد که این تعامل ریسک کمی دارد و به احتمال زیاد قانونی است.

App Check به شما امکان می‌دهد آستانه ریسک برنامه را پیکربندی کنید تا بتوانید تحمل خود را برای این ریسک تنظیم کنید.

برای اکثر موارد استفاده، مقدار آستانه پیش‌فرض ۰.۵ توصیه می‌شود. اگر مورد استفاده شما نیاز به تنظیم دارد، می‌توانید این مقدار را برای هر یک از برنامه‌های خود در کنسول Firebase پیکربندی کنید (به Security > App Check بروید). حتماً برخی از ملاحظات مهم در مورد پیکربندی آستانه ریسک برنامه را که در زیر آمده است، بسط داده و مرور کنید.

۲. کیت توسعه App Check را به برنامه خود اضافه کنید.

برای نصب و مدیریت وابستگی‌های فایربیس از Swift Package Manager (SPM) استفاده کنید. اگر از قبل از فایربیس استفاده می‌کنید، مطمئن شوید که بسته فایربیس شما نسخه ۱۲.۱۷.۰ یا بالاتر است.

  1. در Xcode، پروژه اپلیکیشن خود را باز کنید.

  2. کتابخانه Firebase را اضافه کنید:

    1. به مسیر فایل > افزودن بسته‌ها بروید.

    2. وقتی از شما خواسته شد، مخزن SDK پلتفرم‌های اپل فایربیس را اضافه کنید:

      https://github.com/firebase/firebase-ios-sdk
      
    3. آخرین نسخه SDK (نسخه ۱۲.۱۷.۰ یا بالاتر) را انتخاب کنید.

    4. کتابخانه FirebaseAppCheck را انتخاب کنید.

    5. روی افزودن بسته کلیک کنید. Xcode وابستگی‌ها را شناسایی و دانلود خواهد کرد.

    6. وقتی از شما خواسته شد، کتابخانه را به هدف برنامه خود اضافه کنید.

  3. کتابخانه reCAPTCHA Enterprise را اضافه کنید:

    1. به فایل > افزودن بسته‌ها برگردید

    2. وقتی از شما خواسته شد، مخزن reCAPTCHA Enterprise SDK را اضافه کنید:

      https://github.com/GoogleCloudPlatform/recaptcha-enterprise-mobile-sdk
      
    3. کتابخانه RecaptchaEnterprise را انتخاب کنید.

    4. روی افزودن بسته کلیک کنید. وقتی از شما خواسته شد، کتابخانه را به مقصد برنامه خود اضافه کنید.

۳. App Check

در برنامه خود، قبل از استفاده از سایر سرویس‌های Firebase، باید App Check مقداردهی اولیه کنید.

یک نمونه از RecaptchaProviderFactory ایجاد کنید و کلید reCAPTCHA خود را به آن ارسال کنید و سپس App Check برای استفاده از آن پیکربندی کنید:

let providerFactory = RecaptchaProviderFactory(siteKey: "SITE_KEY")
AppCheck.setAppCheckProviderFactory(providerFactory)

FirebaseApp.configure()

۴. معیارها را رصد کنید و اجرای آنها را ممکن سازید

بعد از اینکه App Check در برنامه خود تنظیم کردید، شروع به توزیع برنامه به‌روزرسانی‌شده بین کاربران خود کنید.

برنامه کلاینت به‌روزرسانی‌شده، همراه با هر درخواستی که به Firebase ارسال می‌کند، توکن‌های App Check را نیز ارسال خواهد کرد. با این حال، App Check درخواست‌های دارای توکن‌های نامعتبر را تا زمانی که App Check اجرا نشود، مسدود نمی‌کند .

نظارت بر معیارها

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

برای کمک به تصمیم‌گیری، می‌توانید معیارهای App Check را برای سرویس‌هایی که استفاده می‌کنید بررسی کنید:

فعال کردن اجرای App Check

وقتی فهمیدید که App Check چگونه بر کاربران شما تأثیر می‌گذارد و آماده ادامه کار شدید، می‌توانید اجرای App Check را فعال کنید:

استفاده از App Check در محیط‌های اشکال‌زدایی

App Check برخی از محیط‌ها را به عنوان نامعتبر طبقه‌بندی می‌کند، مانند درخواست‌های یک شبیه‌ساز/شبیه‌ساز در طول توسعه یا از یک محیط ادغام مداوم (CI).

برای اجرای برنامه خود در این نوع محیط‌ها پس از اجرای App Check ، باید یک نسخه اشکال‌زدایی از برنامه خود ایجاد کنید که از ارائه‌دهنده اشکال‌زدایی App Check به جای ارائه‌دهنده گواهی تولید استفاده کند.

برای جزئیات بیشتر، به «استفاده از App Check با ارائه‌دهنده اشکال‌زدایی در پلتفرم‌های اپل» مراجعه کنید.

قیمت‌گذاری

App Check از طرف شما یک ارزیابی ایجاد می‌کند تا هر بار که برنامه شما توکن App Check خود را به‌روزرسانی می‌کند، توکن پاسخ کاربر را اعتبارسنجی کند. پروژه Firebase شما برای هر ارزیابی ایجاد شده بالاتر از سهمیه بدون هزینه، هزینه دریافت خواهد کرد. برای جزئیات بیشتر، به قیمت‌گذاری reCAPTCHA مراجعه کنید.

به طور پیش‌فرض، برنامه شما این توکن را هر ۱ ساعت دو بار به‌روزرسانی می‌کند. برای کنترل اینکه برنامه شما چند وقت یکبار توکن‌های App Check را به‌روزرسانی می‌کند (و در نتیجه چند وقت یکبار ارزیابی‌های جدید ایجاد می‌شوند)، می‌توانید TTL توکن را پیکربندی کنید .