Этот запрос поможет ИИ-помощнику (например, Google Antigravity) сгенерировать и улучшить Firebase Security Rules для вашего приложения. Вы можете использовать запрос, чтобы составить черновик Security Rules для распространенных сценариев, таких как предоставление доступа определенным пользователям, реализация разрешений на основе ролей и проверка данных.
Этот запрос предназначен для создания Security Rules для:
- Cloud Firestore – защищенные коллекции и документы на основе логики вашего приложения.
- Cloud Storage for Firebase: проверьте разрешения на доступ к сохраненным файлам.
Использование этого запроса поможет вам начать работу с надежной системой безопасности, но перед развертыванием Security Rules в рабочей среде всегда следует тщательно протестировать его. Подробнее о тестировании Security Rules рассказывается в статье Начало работы с Firebase Security Rules: тестирование Security Rules.
Требования
- Ознакомьтесь с рекомендациями по работе с Firebase Security Rules.
- Чтобы запустить модульное тестирование для Firebase Security Rules и использовать Firebase Local Emulator Suite, установите Node.js и Firebase CLI. Полные инструкции приведены в статье Как установить, настроить и интегрировать Firebase Local Emulator Suite.
- Рекомендуется. Если вы ещё не сделали этого, установите Antigravity.
Ниже описано, как включить и использовать навыки агента Firebase и MCP-сервер, чтобы сгенерировать Security Rules. Если вы предпочитаете использовать другого ИИ-агента для программирования, вы можете скопировать и вставить запрос для Cloud Firestore или Cloud Storage for Firebase из репозитория
firebase-toolsв выбранного вами ИИ-агента для программирования. - Навыки агента Firebase и MCP-сервер работают вместе, чтобы получать доступ к запросам, которые генерируют и проверяют Firebase Security Rules, а также помогают тестировать и развертывать Security Rules. Установите MCP-сервер Firebase прежде чем использовать эти инструменты для создания Firebase Security Rules.
Ограничения
Мы активно работаем над улучшением этой функции, поэтому список ограничений может измениться. Следите за обновлениями.
Запрос предназначен для создания Firebase Security Rules для Cloud Firestore и Cloud Storage for Firebase. Он пока не может генерировать Security Rules для Firebase Realtime Database.
Firebase Security Rules не вызываются при доступе к базе данных или сегменту с сервера или из другой серверной среды, например при использовании Firebase Admin SDK. Если вы используете Admin SDK, то несете ответственность за управление авторизацией и проверку данных в коде на стороне сервера.
Gemini в Firebase в консоли Firebase не может генерировать Firebase Security Rules, даже если вы используете этот запрос. Вместо этого используйте альтернативного ИИ-помощника, у которого есть доступ к вашей базе кода, например Antigravity (о нем рассказывается на этой странице).
Как использовать запрос
Эта возможность доступна при использовании Firebase MCP-сервера и навыков агента Firebase с совместимым ИИ-помощником (например, Antigravity) для создания Security Rules и тестов. Эти инструменты анализируют исходный код, чтобы помочь определить схемы данных и шаблоны доступа для Cloud Firestore и Cloud Storage. Они созданы для разработки Security Rules
на основе принципа минимальных привилегий и попыток обнаружить
уязвимости с помощью итеративных симуляций "атак". Чтобы помочь с окончательной проверкой, они предоставляют начальный набор модульных тестов с использованием @firebase/rules-unit-testing, что позволяет вам локально проверить логику безопасности с помощью Firebase Local Emulator Suite.
Чтобы использовать эти инструменты, выполните три шага, описанные в этом разделе:
Шаг 1. Создайте Security Rules и тесты
Настройте и запустите инструменты:
Включите навыки агента Firebase:
Google Antigravity: следуйте инструкциям по настройке, чтобы установить плагин Firebase из Antigravity Marketplace. Вы также можете установить навыки на уровне проекта, выполнив следующую команду:
npx skills add firebase/agent-skills --agent=antigravityДругие агенты на основе ИИ. Следуйте инструкциям по навыкам агента и MCP-серверу.
Запустите ИИ-помощника (например, введите
agyв терминале, чтобы открыть интерфейс командной строки, или откройте приложение для компьютера).В корневом каталоге проекта попросите агента сгенерировать Security Rules для Cloud Firestore или Cloud Storage в зависимости от того, как ваш ИИ-агент взаимодействует с запросами MCP:
Для агентов, которые используют естественный язык (например, Antigravity), создайте запрос на естественном языке.
Создать Security Rules для Cloud Firestore:
Generate Firestore security rules for this project, then run the unit tests.В родительском каталоге агент создает файл
firestore.rulesи новый каталогsecurity_rules_test_firestore, содержащий проект Node.js с модульным тестированием для сгенерированного файла Security Rules.Создать Security Rules для Cloud Storage for Firebase:
Generate Cloud Storage security rules for this project, then run the unit tests.В родительском каталоге агент создает файл
storage.rulesи новый каталогsecurity_rules_test_storage, в котором находится проект Node.js с модульным тестированием для сгенерированного файла Security Rules.
Для агентов программирования, которые поддерживают слеш-команды (например, Claude Code), используйте следующие команды:
Создать Security Rules для Cloud Firestore:
/firestore:generate_security_rulesСоздать Security Rules для Cloud Storage for Firebase:
/storage:generate_security_rules
Для агентов программирования, которые не поддерживают интеграцию запросов MCP, можно скопировать шаблон запроса из репозитория
firebase-toolsи вставить его в чат агента.- Сгенерируйте Security Rules для Cloud Firestore.Скопируйте запрос из Cloud Firestore.
- Сгенерировать Security Rules для Cloud Storage for Firebase: скопируйте запрос из Cloud Storage for Firebase.
Шаг 2. Проверьте результаты тестирования и проверки Security Rules
Убедитесь, что ваш ИИ-агент выполнил следующие действия: После запуска инструментов вы должны получить сгенерированную сводку.
Проверка синтаксиса. После создания Security Rules ваш ИИ-агент по написанию кода автоматически проверяет синтаксис с помощью команды
firebase_validate_security_rulesс MCP-сервера Firebase.Модульное тестирование. После проверки синтаксиса ИИ-агент пытается запустить сгенерированные модульные тесты с помощью Firebase Local Emulator Suite.
Если тесты не запускаются автоматически, запустите Firebase Local Emulator Suite в отдельном терминале, а затем выполните одно из следующих действий:
Вариант 1. Попросите ИИ-помощника запустить тесты
Firebase Emulator Suite is running in a separate terminal. Please execute the tests.Вариант 2. Запустите тесты вручную, следуя инструкциям в файле
README.mdв каталогеrules_testилиstorage_rules_test.
Шаг 3. Разверните Security Rules в проекте Firebase
Когда вы будете довольны результатом сгенерированной Security Rules, используйте следующие команды CLI Firebase, чтобы развернуть Security Rules в проекте Firebase:
Cloud Firestore
firebase deploy --only firestore:rulesCloud Storage for Firebase
firebase deploy --only storage