Данные пользователя отображаются в инструментах разработчика браузера - PullRequest
0 голосов
/ 22 ноября 2018

У меня есть приложение rails, где я использую JavaScript.Теперь, когда пользователь входит в приложение, я могу видеть все данные пользователя (электронная почта, телефон, телефон и т. Д.) В разделе Network-> Preview инструментов разработчика браузера.Есть ли способ спрятать его в рельсах?так что когда я открываю инструменты разработчика браузера, я не вижу детали пользователя.Я использую React JS в интерфейсе.

1 Ответ

0 голосов
/ 22 ноября 2018

Насколько я понял, это проблема авторизации.Возможно, вы хотите иметь разные роли для своих пользователей и, исходя из таких ролей, решить, что отображать.

Вы можете использовать policy , чтобы определить, к какому контенту разрешен доступ каждому пользователю.Для этого вы можете использовать pundit gem .Очень полезно определить механизмы авторизации для действий контроллера.

Если разные пользователи могут получить доступ к одному и тому же маршруту, но вам необходимо скрыть некоторые поля / детали для некоторых из них, вы должны передать current_user в ваши сериализации.Например, если вы используете гем Active Model Serializer , вам необходимо добавить current_user в область действия ваших сериализаторов:

class ApplicationController < ActionController::Base
  serialization_scope :current_user
end

И затем использовать эту область для отображения сведений о пользователе.:

class UserSerializer < BaseSerializer
  attribute :name # Everyone can see
  attribute :email do # Only admins can see
    user = scope
    if user
      if user.admin?
        object.email
      end
    end
  end
end

В этой статье более подробно обсуждается вопрос авторизации в rails-приложениях

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...