Much depends on the definition of ssh::auth:server, which you did not
provide. I took a quick look around for a public release of it
somewhere, but nothing turned up. I can therefore speak only in
generalities. There are three possibilities:
1) If the ssh::auth::server definition supports it, you can specify
the "user" property as an array:
ssh::auth::server { 'steve': user => 'appuser' }
ssh::auth::server { ['thomas', 'peter', ]: user => ['admin',
'appuser'] }
}
2) Alternatively, it may be possible to separate the resource title
from the system user. It could be something similar to this:
ssh::auth::server { 'steve': user => 'appuser' }
ssh::auth::server { 'thomas-admin':
sys_user => 'thomas',
user => 'admin'
}
ssh::auth::server { 'peter-admin':
sys_user => 'peter',
user => 'admin'
}
ssh::auth::server { 'thomas-appuser':
sys_user => 'thomas',
user => 'appuser'
}
ssh::auth::server { 'peter-appuser':
sys_user => 'peter',
user => 'appuser'
}
}
3) If the ssh::auth::user type does not support either of the above
approaches, then you'll need to modify it to do so or replace it with
something different that does.
John