Перейти к основному содержимому

Аутентификация серверной части

В продакшене API-ключ FastNear следует считать серверным секретом.

Рекомендуемый подход

  • Храните ключ в переменных окружения, менеджере секретов или хранилище секретов вашей платформы.
  • Подставляйте его с сервера, из воркера, прокси или агентного рантайма, который вы контролируете.
  • Логируйте и отслеживайте использование на стороне сервера.
  • Ротируйте ключ, если он утёк или если участнику команды больше не нужен доступ.

Никогда не делайте так в продакшене

  • Не включайте ключ в браузерные сборки.
  • Не храните ключ в браузерном localStorage и не считайте это безопасным.
  • Не раскрывайте ключ конечным пользователям через публичные параметры строки запроса, видимые заголовки или клиентские конфиги.

Пример: запрос с сервера

const response = await fetch('https://rpc.mainnet.fastnear.com?apiKey=' + process.env.FASTNEAR_API_KEY, {
method: 'POST',
headers: {
'Content-Type': 'application/json',
Accept: 'application/json',
},
body: JSON.stringify({
jsonrpc: '2.0',
id: 'my-service',
method: 'query',
params: {
request_type: 'view_account',
account_id: 'root.near',
finality: 'final',
},
}),
});

Операционные рекомендации

  • Удаляйте ключи из логов, трассировок, отчётов о сбоях и скопированных примеров curl.
  • Если браузеру нужны возможности FastNear, предпочитайте тонкий серверный прокси.
  • Выдавайте агентам и воркерам собственные учётные данные рантайма, а не ключи, заимствованные из браузерной сессии разработчика.
  • Зафиксируйте правила владения ключом и его ротации, чтобы команда знала, кто может его отозвать и заменить.

Устранение неполадок

Сервер работает локально, но ломается в продакшене

Сначала проверьте окружение деплоя: отсутствующие переменные окружения, неверные имена секретов и ограничения на исходящую сеть вызывают проблемы чаще, чем форма запроса.

Я вижу ключи в логах или отчётах об ошибках

Исправьте это до расширения использования. Любой ключ, попавший в лог, считайте скомпрометированным и ротируйте.

Браузеру всё ещё нужен прямой доступ к FastNear

Поставьте перед FastNear контролируемый серверный или пограничный прокси и сделайте этот сервис владельцем ключа.