Node.js process.setuid() Method
The process.setuid() method is an inbuilt application programming interface of the process module which is used to set the user identity of the Node.js process.
Syntax:
process.setuid(id)
Parameters: This method accepts single parameter as mentioned above and described below:
- id: It is a required parameter that holds a String or an integer denotes either numeric ID or username string, if username is passed, it blocks while resolving the associated numeric ID.
Return: It does not return any value.
Note: This function will only work on POSIX platforms. Not available on windows or android platforms so will cause an error i.e. TypeError, setuid is not a function.
Below examples illustrate the use of process.setuid() method in Node.js:
Example 1:
// Node.js program to demonstrate the
// process.setuid() Method
// Including process module
const process = require('process');
// Print the user identity of the Node.js
// process and check whether the methods
// exists or not
if (process.getuid && process.setuid ) {
// Setting user id
process.setuid(400);
// Printing getuid() value
console.log("The user identity of the Node.js"
+ " process:", process.getuid());
}
Output:
The user identity of the Node.js process: 400
Example 2:
// Node.js program to demonstrate the
// process.setuid() Method
// Including process module
const process = require('process');
// Set user id and check whether
// the method exists or not
if (process.setuid) {
// Within try catch
try {
process.setuid(696);
console.log("User id has successfully been set");
} catch (err) {
console.log("Failed to set user id:", err);
}
}
// Check whether the method exists or not
if (process.getuid) {
// Printing getuid() value
console.log("The user identity of the Node.js"
+ " process:", process.getuid());
}
Output:
User id has successfully been set The user identity of the Node.js process: 696
Note: The above program will compile and run by using the node filename.js command.
Reference: https://nodejs.org/api/process.html#process_process_setuid_id