| انتخاب پلتفرم: | iOS+ اندروید وب فلاتر |
این صفحه به شما نشان میدهد که چگونه با استفاده از ارائهدهنده reCAPTCHA Enterprise ، App Check در یک برنامه پلتفرم اپل راهاندازی کنید. App Check به شما کمک میکند تا مطمئن شوید که فقط برنامه شما میتواند به منابع backend پروژه شما دسترسی داشته باشد. برای کسب اطلاعات بیشتر، مرور کلی ما در مورد App Check مرور کنید.
App Check نیاز به استفاده از کلیدهای reCAPTCHA مبتنی بر امتیاز دارد، که آن را برای کاربران نامرئی میکند. این بدان معناست که ارائه دهنده reCAPTCHA Enterprise از کاربران نمیخواهد که در هر زمانی یک چالش را حل کنند.
اگر مورد استفاده شما به ویژگیهای reCAPTCHA Enterprise نیاز دارد که توسط App Check پیادهسازی نشده است، یا اگر میخواهید از App Check با ارائهدهنده سفارشی خود استفاده کنید، به بخش پیادهسازی ارائهدهنده سفارشی App Check مراجعه کنید.
۱. پروژه فایربیس خود را راهاندازی کنید
اگر هنوز Firebase را به پروژه اپل خود اضافه نکردهاید، آن را اضافه کنید .
در کنسول Google Cloud ، به صفحه Fraud Defense بروید و موارد زیر را برای ارائه دهنده reCAPTCHA Enterprise انجام دهید:
مطمئن شوید که در پروژه صحیح هستید (به انتخابگر پروژه در بالای صفحه مراجعه کنید).
در صورت درخواست، رابط برنامهنویسی کاربردی reCAPTCHA Enterprise را فعال کنید.
یک کلید از نوع iOS ایجاد کنید و شناسه بسته برنامه خود را مشخص کنید (برای مثال،
com.example.my_app).مطمئن شوید که همان شناسه بستهای را که هنگام ایجاد برنامه Firebase Apple خود ارائه دادید، در پروژه Firebase خود وارد میکنید. مقدار شناسه بسته به حروف کوچک و بزرگ حساس است.
برای App Check ، هر شناسه بسته فقط میتواند با یک کلید reCAPTCHA مطابقت داشته باشد.
برای دستورالعملهای دقیق، به ایجاد کلیدهای reCAPTCHA مبتنی بر امتیاز مراجعه کنید.
این کلید را یادداشت کنید. باید آن را به جریان ثبتنام در کنسول Firebase اضافه کنید.
در کنسول Firebase ، به مسیر Security > App Check بروید.
در تب برنامهها ، برنامههای پلتفرم اپل خود را برای استفاده App Check با ارائهدهنده reCAPTCHA Enterprise ثبت کنید. باید کلیدی را که در کنسول Google Cloud دریافت کردهاید، ارائه دهید.
اختیاری : زمان زنده بودن توکن (TTL) را تنظیم کنید.
در تنظیمات ثبت برنامه، یک زمان دلخواه برای زنده ماندن (TTL) برای توکنهای App Check صادر شده توسط ارائه دهنده تنظیم کنید. میتوانید TTL را روی هر مقداری بین 30 دقیقه تا 7 روز تنظیم کنید. هنگام تغییر این مقدار، به موارد زیر توجه داشته باشید:
- امنیت: TTL های کوتاه تر امنیت قوی تری را فراهم می کنند، زیرا بازه زمانی که یک توکن فاش شده یا رهگیری شده می تواند توسط یک مهاجم مورد سوء استفاده قرار گیرد را کاهش می دهند.
- عملکرد: هرچه TTL های کوتاهتر باشند، برنامه شما دفعات بیشتری عملیات تصدیق را انجام میدهد. از آنجایی که فرآیند تصدیق برنامه هر بار که انجام میشود، به درخواستهای شبکه تأخیر اضافه میکند، TTL کوتاه میتواند بر عملکرد برنامه شما تأثیر بگذارد.
- سهمیه و هزینه: TTL های کوتاه تر و تأیید مجدد مکرر، سهمیه شما را سریعتر تمام می کند و برای خدمات پولی، احتمالاً هزینه بیشتری دارد. به سهمیه ها و محدودیت ها مراجعه کنید.
مدت زمان پیشفرض TTL برای اکثر برنامهها ۱ ساعت است که معقول به نظر میرسد. توجه داشته باشید که کتابخانه App Check تقریباً در نصف مدت زمان TTL، توکنها را بهروزرسانی میکند.
اختیاری : تنظیمات پیشرفته را پیکربندی کنید.
روی ذخیره کلیک کنید.
(اختیاری) پیکربندی تنظیمات پیشرفته
وقتی کاربری برنامه شما را باز میکند، reCAPTCHA Enterprise سطح ریسک تعامل کاربر را تحت تأثیر کلیدهای اعمالشده ارزیابی میکند و امتیازی بین ۰.۰ تا ۱.۰، با گامهای ۰.۱، برمیگرداند.
- امتیاز ۰.۰ نشان میدهد که این تعامل ریسک بالایی دارد و ممکن است کلاهبرداری باشد.
- امتیاز ۱.۰ نشان میدهد که این تعامل ریسک کمی دارد و به احتمال زیاد قانونی است.
App Check به شما امکان میدهد آستانه ریسک برنامه را پیکربندی کنید تا بتوانید تحمل خود را برای این ریسک تنظیم کنید.
برای اکثر موارد استفاده، مقدار آستانه پیشفرض ۰.۵ توصیه میشود. اگر مورد استفاده شما نیاز به تنظیم دارد، میتوانید این مقدار را برای هر یک از برنامههای خود در کنسول Firebase پیکربندی کنید (به Security > App Check بروید). حتماً برخی از ملاحظات مهم در مورد پیکربندی آستانه ریسک برنامه را که در زیر آمده است، بسط داده و مرور کنید.
App Check از آستانه ریسک برنامه پیکربندیشده شما به عنوان حداقل امتیاز reCAPTCHA Enterprise مورد نیاز برای مشروع تلقی شدن یک تعامل کاربری استفاده میکند. تمام امتیازات reCAPTCHA Enterprise که کاملاً کمتر از آستانه پیکربندیشده شما باشند، رد خواهند شد. هنگام تنظیم آستانه ریسک برنامه خود، به موارد زیر توجه داشته باشید:
اگر پروژه فایربیس شما روی طرح قیمتگذاری بدون هزینه اسپارک باشد، از بین ۱۱ سطح امتیاز reCAPTCHA Enterprise ممکن، فقط چهار سطح امتیاز زیر در دسترس هستند: ۰.۱، ۰.۳، ۰.۷ و ۰.۹.
در این مدت، App Check به طور مشابه فقط مقادیر آستانه خطر برنامه 0.1، 0.3، 0.5، 0.7 و 0.9 را مجاز میداند. مقدار آستانه خطر برنامه 0.5 همچنان برای اکثر موارد استفاده توصیه میشود.
برای فعال کردن هر ۱۱ سطح امتیاز reCAPTCHA Enterprise ، یک حساب Cloud Billing را به پروژه خود متصل کنید (به این معنی که پروژه Firebase خود را به طرح قیمتگذاری Blaze که به صورت پرداخت در حین استفاده است ارتقا میدهید). پس از ارتقاء پروژه، App Check به شما امکان میدهد مقادیر آستانه ریسک برنامه را بین ۰.۰ تا ۱.۰، با گامهای ۰.۱ پیکربندی کنید.
برای نظارت بر توزیع نمرات بالا و پایین reCAPTCHA Enterprise برای برنامه خود، به صفحه reCAPTCHA Enterprise در کنسول Google Cloud بروید و کلید مورد استفاده برنامه خود را انتخاب کنید.
آستانه ریسک برنامه خود را متناسب با تحمل خود تنظیم کنید:
اگر تحمل ریسک بالایی برای برنامه دارید، نوار لغزنده را به سمت راست حرکت دهید تا آستانه ریسک برنامه کاهش یابد .
- مقدار ۰.۰ توصیه نمیشود ، زیرا این تنظیم محافظت در برابر سوءاستفاده را غیرفعال میکند.
اگر تحمل ریسک برنامه کمی دارید، نوار لغزنده را به سمت چپ حرکت دهید تا آستانه ریسک برنامه افزایش یابد .
- مقدار ۱.۰ توصیه نمیشود ، زیرا این تنظیم میتواند به طور بالقوه دسترسی کاربران قانونی که این آستانه اعتماد بالا را برآورده نمیکنند را نیز مسدود کند.
برای جزئیات بیشتر، مستندات reCAPTCHA Enterprise را بررسی کنید.
۲. کیت توسعه App Check را به برنامه خود اضافه کنید.
برای نصب و مدیریت وابستگیهای فایربیس از Swift Package Manager (SPM) استفاده کنید. اگر از قبل از فایربیس استفاده میکنید، مطمئن شوید که بسته فایربیس شما نسخه ۱۲.۱۷.۰ یا بالاتر است.
در Xcode، پروژه اپلیکیشن خود را باز کنید.
کتابخانه Firebase را اضافه کنید:
به مسیر فایل > افزودن بستهها بروید.
وقتی از شما خواسته شد، مخزن SDK پلتفرمهای اپل فایربیس را اضافه کنید:
https://github.com/firebase/firebase-ios-sdkآخرین نسخه SDK (نسخه ۱۲.۱۷.۰ یا بالاتر) را انتخاب کنید.
کتابخانه
FirebaseAppCheckرا انتخاب کنید.روی افزودن بسته کلیک کنید. Xcode وابستگیها را شناسایی و دانلود خواهد کرد.
وقتی از شما خواسته شد، کتابخانه را به هدف برنامه خود اضافه کنید.
کتابخانه reCAPTCHA Enterprise را اضافه کنید:
به فایل > افزودن بستهها برگردید
وقتی از شما خواسته شد، مخزن reCAPTCHA Enterprise SDK را اضافه کنید:
https://github.com/GoogleCloudPlatform/recaptcha-enterprise-mobile-sdkکتابخانه
RecaptchaEnterpriseرا انتخاب کنید.روی افزودن بسته کلیک کنید. وقتی از شما خواسته شد، کتابخانه را به مقصد برنامه خود اضافه کنید.
۳. 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 برای Firebase AI Logic ، SQL Connect ، Realtime Database ، Cloud Firestore ، Cloud Storage ، Authentication ، Google Identity برای iOS، Maps JavaScript API و Places API (جدید).
- نظارت بر App Check معیارهای درخواست برای Cloud Functions .
فعال کردن اجرای App Check
وقتی فهمیدید که App Check چگونه بر کاربران شما تأثیر میگذارد و آماده ادامه کار شدید، میتوانید اجرای App Check را فعال کنید:
- فعال کردن اجرای App Check برای Firebase AI Logic ، SQL Connect ، Realtime Database ، Cloud Firestore ، Cloud Storage ، Authentication ، Google Identity برای iOS، Maps JavaScript API و Places API (جدید).
- فعال کردن اجرای App Check برای Cloud Functions .
استفاده از App Check در محیطهای اشکالزدایی
App Check برخی از محیطها را به عنوان نامعتبر طبقهبندی میکند، مانند درخواستهای یک شبیهساز/شبیهساز در طول توسعه یا از یک محیط ادغام مداوم (CI).
برای اجرای برنامه خود در این نوع محیطها پس از اجرای App Check ، باید یک نسخه اشکالزدایی از برنامه خود ایجاد کنید که از ارائهدهنده اشکالزدایی App Check به جای ارائهدهنده گواهی تولید استفاده کند.
برای جزئیات بیشتر، به «استفاده از App Check با ارائهدهنده اشکالزدایی در پلتفرمهای اپل» مراجعه کنید.
قیمتگذاری
App Check از طرف شما یک ارزیابی ایجاد میکند تا هر بار که برنامه شما توکن App Check خود را بهروزرسانی میکند، توکن پاسخ کاربر را اعتبارسنجی کند. پروژه Firebase شما برای هر ارزیابی ایجاد شده بالاتر از سهمیه بدون هزینه، هزینه دریافت خواهد کرد. برای جزئیات بیشتر، به قیمتگذاری reCAPTCHA مراجعه کنید.
به طور پیشفرض، برنامه شما این توکن را هر ۱ ساعت دو بار بهروزرسانی میکند. برای کنترل اینکه برنامه شما چند وقت یکبار توکنهای App Check را بهروزرسانی میکند (و در نتیجه چند وقت یکبار ارزیابیهای جدید ایجاد میشوند)، میتوانید TTL توکن را پیکربندی کنید .