Android-এ Play Integrity-এর সাথে অ্যাপ চেক ব্যবহার শুরু করুন

এই পৃষ্ঠাটি আপনাকে দেখাবে কিভাবে বিল্ট-ইন প্লে ইন্টিগ্রিটি প্রোভাইডার ব্যবহার করে একটি অ্যান্ড্রয়েড অ্যাপে App Check সক্রিয় করতে হয়। যখন আপনি App Check সক্রিয় করেন, তখন আপনি এটি নিশ্চিত করতে সাহায্য করেন যে শুধুমাত্র আপনার অ্যাপই আপনার প্রোজেক্টের ব্যাকএন্ড রিসোর্স অ্যাক্সেস করতে পারবে। এই ফিচারটির একটি ওভারভিউ দেখুন।

প্লে ইন্টিগ্রিটি প্রোভাইডার গুগল প্লে-তে, গুগল প্লে-র বাইরে, বা উভয় স্থানে প্রকাশিত অ্যান্ড্রয়েড অ্যাপগুলোকে সাপোর্ট করে। যদি আপনার ব্যবহারের ক্ষেত্রে এমন প্লে ইন্টিগ্রিটি ফিচারের প্রয়োজন হয় যা App Check দ্বারা ইমপ্লিমেন্ট করা হয়নি, অথবা যদি আপনি আপনার নিজস্ব কাস্টম প্রোভাইডারের সাথে App Check ব্যবহার করতে চান, তাহলে “একটি কাস্টম App Check প্রোভাইডার ইমপ্লিমেন্ট করুন” দেখুন।

১. আপনার ফায়ারবেস প্রজেক্ট সেট আপ করুন।

  1. Add Firebase to your Android project if you haven't already done so.

  2. প্লে ইন্টিগ্রিটি এপিআই সক্রিয় করুন:

    1. In the Google Play Console , select your app, or add it if you haven't already done so.

    2. রিলিজ সেকশনে, অ্যাপ ইন্টিগ্রিটি- তে ক্লিক করুন।

    3. পেজের প্লে ইন্টিগ্রিটি এপিআই (Play Integrity API) সেকশনে যান, ‘লিঙ্ক ক্লাউড প্রজেক্ট’ (Link Cloud project)- এ ক্লিক করুন, তারপর Google Cloud প্রজেক্টের তালিকা থেকে আপনার ফায়ারবেস প্রজেক্টটি বেছে নিন। এখানে আপনি যে প্রজেক্টটি বেছে নেবেন, সেটি অবশ্যই সেই ফায়ারবেস প্রজেক্টের মতোই হতে হবে যেখানে আপনি আপনার অ্যাপটি রেজিস্টার করেছেন (পরবর্তী ধাপ দেখুন)।

  3. In the Firebase console, navigate to Security > App Check .

  4. In the Apps tab, register your apps to use App Check with the Play Integrity provider. You'll need to provide the SHA-256 fingerprint of your app's signing certificate.

    সাধারণত আপনার প্রোজেক্টের সমস্ত অ্যাপ রেজিস্টার করতে হয়, কারণ একবার আপনি কোনো ফায়ারবেস প্রোডাক্টের জন্য এনফোর্সমেন্ট চালু করলে, শুধুমাত্র রেজিস্টার করা অ্যাপগুলোই সেই প্রোডাক্টের ব্যাকএন্ড রিসোর্স অ্যাক্সেস করতে পারবে।

  5. ঐচ্ছিক : অ্যাপ রেজিস্ট্রেশন সেটিংসে, প্রোভাইডার কর্তৃক ইস্যুকৃত App Check টোকেনগুলোর জন্য একটি কাস্টম টাইম-টু-লিভ (TTL) সেট করুন। আপনি TTL-এর মান ৩০ মিনিট থেকে ৭ দিনের মধ্যে যেকোনো একটিতে সেট করতে পারেন। এই মান পরিবর্তন করার সময়, নিম্নলিখিত সীমাবদ্ধতাগুলো সম্পর্কে সচেতন থাকুন:

    • Security: Shorter TTLs provide stronger security, because it reduces the window in which a leaked or intercepted token can be abused by an attacker.
    • পারফরম্যান্স: কম TTL-এর অর্থ হলো আপনার অ্যাপকে আরও ঘন ঘন অ্যাটেস্টেশন করতে হবে। যেহেতু অ্যাপ অ্যাটেস্টেশন প্রক্রিয়াটি প্রতিবার সম্পন্ন হওয়ার সময় নেটওয়ার্ক অনুরোধে লেটেন্সি যোগ করে, তাই একটি কম TTL আপনার অ্যাপের পারফরম্যান্সকে প্রভাবিত করতে পারে।
    • Quota and cost: Shorter TTLs and frequent re-attestation deplete your quota faster, and for paid services, potentially cost more. See Quotas & limits .

    The default TTL of 1 hour is reasonable for most apps. Note that the App Check library refreshes tokens at approximately half the TTL duration.

উন্নত সেটিংস কনফিগার করুন (ঐচ্ছিক)

App Check উন্নত ব্যবহারের জন্য বেশ কিছু সেটিংস প্রদান করে, যার মধ্যে গুগল প্লে-এর বাইরে আপনার অ্যাপ বিতরণ করাও অন্তর্ভুক্ত। আপনার প্রতিটি নিবন্ধিত অ্যান্ড্রয়েড অ্যাপের জন্য, আপনি Firebase কনসোলের App Check > অ্যাপস ট্যাবে এই সেটিংসগুলো কনফিগার করতে পারেন। আমরা সুপারিশ করি যে, আপনি যখন প্রথমবার আপনার অ্যাপটি নিবন্ধন করবেন , তখন নিচের সারণি অনুযায়ী এই সেটিংসগুলো কনফিগার করুন।

আপনার অ্যাপের বিতরণ চ্যানেল PLAY_RECOGNIZED লাইসেন্সপ্রাপ্ত ডিভাইসের ন্যূনতম গ্রহণযোগ্য অখণ্ডতা স্তর
শুধুমাত্র গুগল প্লে-তে প্রয়োজনীয় প্রয়োজনীয় ডিভাইসের অখণ্ডতা স্তর স্পষ্টভাবে পরীক্ষা করবেন না।
শুধুমাত্র গুগল প্লে-এর বাইরে প্রয়োজন নেই প্রয়োজন নেই ডিভাইসের অখণ্ডতা
গুগল প্লে-তে এবং গুগল প্লে-র বাইরে প্রয়োজনীয় প্রয়োজন নেই ডিভাইসের অখণ্ডতা স্তর স্পষ্টভাবে পরীক্ষা করবেন না।

বিস্তারিত

Each advanced setting corresponds to a Play Integrity verdict label. Consult the Play Integrity documentation for additional details.

  • By default, App Check requires the PLAY_RECOGNIZED app recognition label. Apps not published on Google Play are not eligible to receive this label.
  • By default, App Check doesn't require the LICENSED app licensing label. Only users who have installed or updated your app directly from Google Play are eligible to receive this label.
  • ডিফল্টরূপে, App Check ডিভাইসের অখণ্ডতার রায় স্পষ্টভাবে যাচাই করে না। App Check নিম্নলিখিত তিনটি ডিভাইসের অখণ্ডতার স্তর স্পষ্টভাবে যাচাই করা সমর্থন করে, যা ক্রমবর্ধমান অখণ্ডতার ক্রমানুসারে তালিকাভুক্ত করা হয়েছে।

    • বেসিক ইন্টিগ্রিটি । এর ফলে App Check জন্য MEETS_BASIC_INTEGRITY ডিভাইস রিকগনিশন লেবেলটির প্রয়োজন হয়। আপনার অ্যাপটি এই ঐচ্ছিক লেবেলটি পাওয়ার যোগ্য হতে হলে, আপনাকে প্রথমে গুগল প্লে কনসোল থেকে এটি বেছে নিতে হবে।

    • Device integrity . Causes App Check to require the MEETS_DEVICE_INTEGRITY device recognition label. All apps are automatically eligible to receive this label.

    • শক্তিশালী অখণ্ডতা । এর ফলে App Check জন্য MEETS_STRONG_INTEGRITY ডিভাইস শনাক্তকরণ লেবেলটির প্রয়োজন হয়। আপনার অ্যাপটি এই ঐচ্ছিক লেবেলটি পাওয়ার যোগ্য হতে হলে, আপনাকে প্রথমে গুগল প্লে কনসোল থেকে এটি বেছে নিতে হবে।

২. আপনার অ্যাপে App Check লাইব্রেরিটি যুক্ত করুন

আপনার মডিউল (অ্যাপ-লেভেল) গ্রেডল ফাইলে (সাধারণত <project>/<app-module>/build.gradle.kts অথবা <project>/<app-module>/build.gradle ), অ্যান্ড্রয়েডের জন্য App Check লাইব্রেরির ডিপেন্ডেন্সি যোগ করুন। লাইব্রেরির ভার্সনিং নিয়ন্ত্রণের জন্য আমরা Firebase Android BoM ব্যবহার করার পরামর্শ দিই।

dependencies {
    // Import the BoM for the Firebase platform
    implementation(platform("com.google.firebase:firebase-bom:34.15.0"))

    // Add the dependencies for the App Check libraries
    // When using the BoM, you don't specify versions in Firebase library dependencies
    implementation("com.google.firebase:firebase-appcheck-playintegrity")
}

By using the Firebase Android BoM , your app will always use compatible versions of Firebase Android libraries.

(Alternative) Add Firebase library dependencies without using the BoM

If you choose not to use the Firebase BoM , you must specify each Firebase library version in its dependency line.

Note that if you use multiple Firebase libraries in your app, we strongly recommend using the BoM to manage library versions, which ensures that all versions are compatible.

dependencies {
    // Add the dependencies for the App Check libraries
    // When NOT using the BoM, you must specify versions in Firebase library dependencies
    implementation("com.google.firebase:firebase-appcheck-playintegrity:19.2.0")
}

৩. App Check শুরু করুন

Add the following initialization code to your app so that it runs before you use any other Firebase SDKs:

Kotlin

Firebase.initialize(context = this)
Firebase.appCheck.installAppCheckProviderFactory(
    PlayIntegrityAppCheckProviderFactory.getInstance(),
)

Java

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

পরবর্তী পদক্ষেপ

Once the App Check library is installed in your app, start distributing the updated app to your users.

আপডেট করা ক্লায়েন্ট অ্যাপটি ফায়ারবেসে করা প্রতিটি অনুরোধের সাথে App Check টোকেন পাঠানো শুরু করবে, কিন্তু ফায়ারবেস কনসোলের App Check বিভাগে আপনি এনফোর্সমেন্ট সক্রিয় না করা পর্যন্ত ফায়ারবেস প্রোডাক্টগুলোর জন্য টোকেনগুলো বৈধ থাকার প্রয়োজন হবে না।

মেট্রিক নিরীক্ষণ করুন এবং প্রয়োগ সক্ষম করুন

তবে, এনফোর্সমেন্ট চালু করার আগে আপনার নিশ্চিত হয়ে নেওয়া উচিত যে, এর ফলে আপনার বিদ্যমান বৈধ ব্যবহারকারীদের কোনো অসুবিধা হবে না। অন্যদিকে, যদি আপনি আপনার অ্যাপের রিসোর্সের সন্দেহজনক ব্যবহার দেখতে পান, তাহলে আপনি আরও দ্রুত এনফোর্সমেন্ট চালু করতে চাইতে পারেন।

To help make this decision, you can look at App Check metrics for the services you use:

App Check প্রয়োগ সক্ষম করুন

When you understand how App Check will affect your users and you're ready to proceed, you can enable App Check enforcement:

ডিবাগ পরিবেশে App Check ব্যবহার করুন

App Check জন্য আপনার অ্যাপটি নিবন্ধন করার পর, আপনি যদি এমন কোনো পরিবেশে আপনার অ্যাপটি চালাতে চান যা App Check সাধারণত বৈধ বলে গণ্য করে না, যেমন ডেভেলপমেন্টের সময় কোনো এমুলেটর থেকে, অথবা কোনো কন্টিনিউয়াস ইন্টিগ্রেশন (CI) পরিবেশ থেকে, তাহলে আপনি একটি আসল অ্যাটেস্টেশন প্রোভাইডারের পরিবর্তে App Check ডিবাগ প্রোভাইডার ব্যবহার করে আপনার অ্যাপের একটি ডিবাগ বিল্ড তৈরি করতে পারেন।

See Use App Check with the debug provider on Android .