شروع به استفاده از App Check با SafetyNet در Android کنید

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

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

1. پروژه Firebase خود را راه اندازی کنید

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

  2. برنامه های خود را برای استفاده از App Check با ارائه دهنده SafetyNet در بخش App Check کنسول Firebase ثبت کنید. باید اثر انگشت SHA-256 گواهی امضای برنامه خود را ارائه دهید .

    معمولاً باید همه برنامه‌های پروژه خود را ثبت کنید، زیرا پس از فعال کردن اجرای یک محصول Firebase، فقط برنامه‌های ثبت‌شده می‌توانند به منابع پشتیبان محصول دسترسی پیدا کنند.

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

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

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

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

در فایل Gradle ماژول (سطح برنامه) خود (معمولا app/build.gradle )، وابستگی را برای کتابخانه App Check برای Android اعلام کنید:

dependencies {
    implementation 'com.google.firebase:firebase-appcheck-safetynet:16.1.2'
}

3. App Check را اولیه کنید

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

Kotlin+KTX

Firebase.initialize(context = this)
Firebase.appCheck.installAppCheckProviderFactory(
    SafetyNetAppCheckProviderFactory.getInstance()
)

Java

FirebaseApp.initializeApp(/*context=*/ this);
FirebaseAppCheck firebaseAppCheck = FirebaseAppCheck.getInstance();
firebaseAppCheck.installAppCheckProviderFactory(
        SafetyNetAppCheckProviderFactory.getInstance());

مراحل بعدی

هنگامی که کتابخانه App Check در برنامه شما نصب شد، شروع به توزیع برنامه به روز شده بین کاربران خود کنید.

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

معیارها را رصد کنید و اجرا را فعال کنید

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

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

اجرای بررسی برنامه را فعال کنید

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

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

اگر بعد از اینکه برنامه خود را برای بررسی برنامه ثبت کردید، می خواهید برنامه خود را در محیطی اجرا کنید که App Check معمولاً آن را به عنوان معتبر طبقه بندی نمی کند، مانند شبیه ساز در طول توسعه، یا از یک محیط یکپارچه سازی مداوم (CI)، می توانید یک ساختار اشکال زدایی از برنامه خود ایجاد کنید که از ارائه دهنده اشکال زدایی App Check به جای ارائه دهنده گواهی واقعی استفاده می کند.

به استفاده از بررسی برنامه با ارائه‌دهنده اشکال‌زدایی در Android مراجعه کنید.