Пожарная служба request.time.toMillis () не возвращает число в милисек - PullRequest
0 голосов
/ 06 июня 2018

Я перепробовал все, но не могу заставить работать это правило безопасности.Я запускаю 'get' в Simulator для пути 'posts/post-1-id', где resource.data.time - это время в миллисекундах с эпохи 1528316285901, которое является числом.

В основном я перепробовал все конфигурации <, >, !=, ==, <=, >= только для того, чтобы попробоватьпередайте правило безопасности, используя request.time, но я всегда получу 'Имитация доступа к данным запрещена'.

Как сравнить данные из resource.data.time в milisec с request.time?Или как просто сравнить дату создания документа с request.time?

match /posts/{id} {
      allow read: if request.time.toMillis() > resource.data.time;
    } 

1 Ответ

0 голосов
/ 21 июня 2018

Это может быть ошибкой в ​​симуляторе.У меня та же проблема с симулятором, и я вижу ошибку Property time is undefined on object.Ваши правила выглядят так, как будто они должны работать.

Обратите внимание, что тестирование ваших правил без симулятора очень сложно, так как публикация новых правил может занять до 10 минут, и в течение этих 10 минут запросы могут произвольно обрабатываться вашимновые или старые правила.

...