Skip to content

Latest commit

 

History

History
25 lines (19 loc) · 907 Bytes

process_initgroups_user_extra_group.md

File metadata and controls

25 lines (19 loc) · 907 Bytes
  • user {string|number} The user name or numeric identifier.
  • extra_group {string|number} A group name or numeric identifier.

The process.initgroups() method reads the /etc/group file and initializes the group access list, using all groups of which the user is a member. This is a privileged operation that requires that the Node.js process either have root access or the CAP_SETGID capability.

Note that care must be taken when dropping privileges. Example:

console.log(process.getgroups());         // [ 0 ]
process.initgroups('bnoordhuis', 1000);   // switch user
console.log(process.getgroups());         // [ 27, 30, 46, 1000, 0 ]
process.setgid(1000);                     // drop root gid
console.log(process.getgroups());         // [ 27, 30, 46, 1000 ]

Note: This function is only available on POSIX platforms (i.e. not Windows or Android).