Zabezpieczanie niestandardowych zasobów backendu za pomocą narzędzia App Check w projektach Flutter
Zadbaj o dobrą organizację dzięki kolekcji
Zapisuj i kategoryzuj treści zgodnie ze swoimi preferencjami.
Możesz używać App Check do ochrony niestandardowych zasobów backendu nienależących do Google, takich jak własny backend hostowany samodzielnie. Aby to zrobić, musisz wykonać obie te czynności:
Zmodyfikuj klienta aplikacji, aby wysyłał token Sprawdzania aplikacji wraz z każdym żądaniem do backendu, zgodnie z opisem na tej stronie.
Wysyłanie tokenów Sprawdzania aplikacji z żądaniami backendu
Aby mieć pewność, że żądania backendu zawierają prawidłowy, niewygasły token Sprawdzania aplikacji, przed każdym żądaniem wywołaj funkcję getToken(). Biblioteka App Check w razie potrzeby odświeży token.
Gdy uzyskasz prawidłowy token, wyślij go wraz z żądaniem do backendu. Sposób, w jaki to zrobisz, zależy od Ciebie, ale nie wysyłaj tokenów weryfikacji aplikacji w adresach URL, w tym w parametrach zapytania, ponieważ sprawia to, że są one podatne na przypadkowe wycieki i przechwytywanie. Zalecane podejście polega na wysyłaniu tokena w niestandardowym nagłówku HTTP.
Przykład:
voidcallApiExample()async{finalappCheckToken=awaitFirebaseAppCheck.instance.getToken();if(appCheckToken!=null){finalresponse=awaithttp.get(Uri.parse("https://yourbackend.example.com/yourExampleEndpoint"),headers:{"X-Firebase-AppCheck":appCheckToken},);}else{// Error: couldn't get an App Check token.}}
[[["Łatwo zrozumieć","easyToUnderstand","thumb-up"],["Rozwiązało to mój problem","solvedMyProblem","thumb-up"],["Inne","otherUp","thumb-up"]],[["Brak potrzebnych mi informacji","missingTheInformationINeed","thumb-down"],["Zbyt skomplikowane / zbyt wiele czynności do wykonania","tooComplicatedTooManySteps","thumb-down"],["Nieaktualne treści","outOfDate","thumb-down"],["Problem z tłumaczeniem","translationIssue","thumb-down"],["Problem z przykładami/kodem","samplesCodeIssue","thumb-down"],["Inne","otherDown","thumb-down"]],["Ostatnia aktualizacja: 2025-08-23 UTC."],[],[],null,["\u003cbr /\u003e\n\nYou can use App Check to protect non-Google custom backend resources for\nyour app, like your own self-hosted backend. To do so, you'll need to do both of\nthe following:\n\n- Modify your app client to send an App Check token along with each request to your backend, as described on this page.\n- Modify your backend to require a valid App Check token with every request, as described in [Verify App Check tokens from a custom backend](/docs/app-check/custom-resource-backend).\n\nBefore you begin\n\nAdd App Check to your app, using the [default providers](/docs/app-check/flutter/default-providers).\n\nSend App Check tokens with backend requests\n\nTo ensure your backend requests include a valid, unexpired, App Check token,\nprecede each request with a call to `getToken()`. The App Check library\nwill refresh the token if necessary.\n\nOnce you have a valid token, send it along with the request to your backend. The\nspecifics of how you accomplish this are up to you, but *don't send\nApp Check tokens as part of URLs*, including in query parameters, as this\nmakes them vulnerable to accidental leakage and interception. The recommended\napproach is to send the token in a custom HTTP header.\n\nFor example: \n\n void callApiExample() async {\n final appCheckToken = await FirebaseAppCheck.instance.getToken();\n if (appCheckToken != null) {\n final response = await http.get(\n Uri.parse(\"https://yourbackend.example.com/yourExampleEndpoint\"),\n headers: {\"X-Firebase-AppCheck\": appCheckToken},\n );\n } else {\n // Error: couldn't get an App Check token.\n }\n }"]]