استفاده از 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. یک کلید از نوع وب ایجاد کنید و هر یک از دامنه‌های برنامه‌های وب خود را مشخص کنید.

      • App Check از برنامه‌های تحت وبی که روی بیش از ۲۵۰ دامنه سرویس می‌دهند، پشتیبانی نمی‌کند .

      • هرگز localhost به عنوان دامنه به کلید 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 به برنامه خود اضافه کنید

اگر هنوز این کار را نکرده‌اید، کیت توسعه نرم‌افزار JavaScript Firebase را نصب کنید و فایربیس را در برنامه خود راه‌اندازی اولیه کنید .

۳. App Check

کد مقداردهی اولیه App Check زیر را در اوایل برنامه خود اضافه کنید تا قبل از دسترسی به هرگونه سرویس Firebase در برنامه شما اجرا شود.

مطمئن شوید که همان کلید reCAPTCHA را که برای ثبت برنامه خود در reCAPTCHA Enterprise استفاده کرده‌اید، در کنسول Firebase وارد می‌کنید (به بخش اول راهنما مراجعه کنید).

Web

import { initializeApp } from "firebase/app";
import { initializeAppCheck, ReCaptchaEnterpriseProvider } from "firebase/app-check";

const app = initializeApp({
  // Your Firebase configuration object.
});

// Create a ReCaptchaEnterpriseProvider instance
// using your reCAPTCHA Enterprise key and pass it to `initializeAppCheck()`.
const appCheck = initializeAppCheck(app, {
  provider: new ReCaptchaEnterpriseProvider(RECAPTCHA_KEY),
  isTokenAutoRefreshEnabled: true // Set to true to allow auto-refresh.
});

Web

firebase.initializeApp({
  // Your Firebase configuration object.
});

// Create a ReCaptchaEnterpriseProvider instance
// using your reCAPTCHA Enterprise key and pass it to `activate()`.
const appCheck = firebase.appCheck();
appCheck.activate(
  new firebase.appCheck.ReCaptchaEnterpriseProvider(
    RECAPTCHA_KEY
  ),
  true // Set to true to allow auto-refresh.
);

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

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

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

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

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

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

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

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

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

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

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

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

قیمت‌گذاری

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

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