Как получить аутентифицированных пользователей в dyno heroku?

Кто-нибудь знает, как я могу получить учетные данные зарегистрированного пользователя в dyno heroku?

Контекст: мы пытаемся зарегистрировать доступ к производству Heroku rails console. Люди получают к нему доступ через heroku run или heroku exec. Heroku аутентифицирует пользователей, выполнивших команду, однако я не могу получить эту информацию после запуска консоли rails.

Похоже, что heroku cli недоступен в dyno, а whoami возвращает dyno.

Eg:

$ heroku run rails c -a opt-prod

<in rails console> 

irb(main):001:0> ENV
irb(main):001:0> `whoami`

person hdoan    schedule 22.04.2019    source источник


Ответы (1)


Мы связались с Heroku, и у нас нет возможности сделать это. Вместо,

Работающий динамометр не содержит информации о пользователе, запустившем процесс, поэтому невозможно получить «текущего пользователя» изнутри динамометра на Heroku.

Тем не менее, одна из идей обходного пути состоит в том, чтобы захватить текущего пользователя CLI Heroku и отправить его вместе с консольной командой при запуске. Что-то вроде этого будет работать:

CURRENT_HEROKU_USER="$CURRENT_HEROKU_USER" rails c --app my-app-name

> Running [email protected] rails c...

ENV['CURRENT_HEROKU_USER']

> "[email protected]" 

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

[email protected] rails c by user [email protected]

Мне жаль, что у нас нет лучшего ответа для вас здесь.

Пожалуйста, дайте мне знать, если я могу быть более полезным.

person hdoan    schedule 23.06.2019