با App Check از منابع غیر Firebase محافظت کنید

می‌توانید با App Check از منابع غیر Firebase برنامه‌تان مانند backends خود میزبان محافظت کنید. برای انجام این کار، باید هر دو مورد زیر را انجام دهید:

  • سرویس گیرنده برنامه خود را تغییر دهید تا یک نشانه بررسی برنامه همراه با هر درخواست به باطن شما ارسال شود، همانطور که در این صفحه توضیح داده شده است.
  • همانطور که در بررسی نشانه‌های بررسی برنامه از یک باطن سفارشی توضیح داده شده است، باطن خود را طوری تغییر دهید که با هر درخواست، به یک نشانه معتبر بررسی برنامه نیاز داشته باشید.

قبل از اینکه شروع کنی

با استفاده از ارائه دهندگان پیش‌فرض ، بررسی برنامه را به برنامه خود اضافه کنید.

ارسال توکن‌های App Check با درخواست‌های Backend

برای اطمینان از اینکه درخواست‌های Backend شما شامل یک نشانه معتبر، منقضی نشده، App Check است، قبل از هر درخواست یک تماس با getToken() داشته باشید. کتابخانه App Check توکن را در صورت لزوم بازخوانی می کند.

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

مثلا:

void callApiExample() async {
    final appCheckToken = await FirebaseAppCheck.instance.getToken();
    if (appCheckToken != null) {
        final response = await http.get(
            Uri.parse("https://yourbackend.example.com/yourExampleEndpoint"),
            headers: {"X-Firebase-AppCheck": appCheckToken},
        );
    } else {
        // Error: couldn't get an App Check token.
    }
}