2016-11-01 4 views
0

Как я могу выполнить аутентификацию пользователя в командной строке p4 с паролем (я не хочу создавать p4config для пользователя и пароля). Я создаю файл сценария java, который обрабатывает несколько задач, и мне нужно сделать аутентификацию как-то для каждого пользователя.Вопрос об аутентификации P4

Ближайший вариант, что я понял, выглядит следующим образом: 1. -u имя пользователя P4 логин

затем запрос пароля, но я не знаю, как заполнить его с JavaScript (JS узел - p4 модуль). Весь мой код основан на модулях P4 и узле JS.

var username = process.argv[2]; 
    p4.run("-u" + username + " " + "login", function (usererror, credentials) { 
     if(usererror) { 
      console.log(usererror.message); 
     } 
    }); 

ответ

1

на основе модуля документации P4 Узла это, кажется, не предлагают какой-либо поддержки аутентификации и предполагает, что вы уже подлинности, прежде чем пытаться использовать его.

С помощью командной строки вы могли бы сделать что-то вроде:

echo PASSWORD|p4 login 

и в API, эквивалент этого командной строки редирект бы использовать «быстрый» обратный вызов, чтобы обеспечить пароль.

Далее, как только вы проверку подлинности как супер-пользователь, вы можете сделать:

p4 login USERNAME 

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

К сожалению, я не могу предложить какие-либо конкретные предложения о том, как архивировать ваш инструмент, не зная об этом гораздо больше - где он работает? Кто работает? Что нужно делать? Какова конфигурация безопасности вашего сервера? Насколько вы доверяете людям в своей внутренней сети? И т.д.

+0

Спасибо Сэм! Я буду использовать «echo PASSWORD | p4 login» и будет запускать его отдельно как bat-скрипт. Это будет работать для меня. – kai0

 Смежные вопросы

  • Нет связанных вопросов^_^