2013-11-30 3 views
0

Я хотел бы настроить пользователя (называемый «развертыватель»), но только для определенных ролей.Шеф-повар: создать пользователя только для определенных ролей?

Я использую Opscode users cookbook. Я называю это «базой» (включенной в другие кулинарные книги) wrapper cookbook. Таким образом, пользователи в моем каталоге data_bags/users создаются на всех моих сайтах шеф-повара.

Имея это в виду, мой пользователь «развертывателя», похоже, не принадлежит data_bags/users/deployer.json. (Это создало бы его для всех узлов.)

Я думаю и исследую, чтобы найти один или несколько чистых способов сделать это. Мой вариант использования, вероятно, не является чем-то необычным, поэтому я надеюсь найти «легкий» путь с шеф-поваром, чтобы делать то, что мне нужно. Мои мысли и идеи в настоящее время включают в себя:

  1. Я еще не нашел явный код, который читается из моего «пользовательского» пакета данных. После нахождения такого кода, возможно, я мог бы настроить его для фильтрации на основе атрибута, чтобы определенные пользователи были исключены, если определенная роль не «работает»?

  2. Я могу создать отдельный пакет данных, возможно, «foo-users», где роль «foo» - это роль. Тогда я мог бы использовать Opscode users cookbook, чтобы использовать этот конкретный пакет данных именно тогда, когда это необходимо.

ответ

1

Взгляните на кулинарию deployer. Эта поваренная книга является бесплатной для кулинарной книги users, так как она может использовать тот же «пользовательский» баз данных.

0

Я в настоящее время склоняется к использованию этого кода для ролей, где это необходимо:

user "deployer" do 
    comment "deployer account" 
    supports manage_home: true 
    shell "/bin/false" 
end 

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

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

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