Menu

Test User Configuration

module.exports = (service) ->
  options = service.options

  options.force_check ?= false

Unix Identity

  # Group
  options.group ?= {}
  options.group = name: options.group if typeof options.group is 'string'
  options.group.name ?= 'ryba'
  options.group.system ?= true
  # User
  options.user ?= {}
  options.user = name: options.user if typeof options.user is 'string'
  options.user.name ?= 'ryba'
  options.user.home ?= "/home/#{options.user.name}"
  options.user.gid ?= options.group.name
  options.user.system ?= true
  options.user.comment ?= 'Ryba Test User'

Kerberos Principal

  options.krb5 ?= {}
  options.krb5.realm ?= service.deps.krb5_client.options.etc_krb5_conf?.libdefaults?.default_realm
  # Admin Information
  options.krb5.admin = service.deps.krb5_client.options.admin[options.krb5.realm]
  # Kerberos user
  options.krb5.user ?= {}
  options.krb5.user = principal: options.krb5.user if typeof options.krb5.user is 'string'
  options.krb5.user.principal ?= options.user.name
  options.krb5.user.password ?= options.user.password if options.user.password?
  throw Error "Required Option: krb5.user.password" unless options.krb5.user.password
  options.krb5.user.principal = "#{options.krb5.user.principal}@#{options.krb5.realm}" unless /.+@.+/.test options.krb5.user.principal