node-expose-sspi-strict
Version:
Expose the Microsoft Windows SSPI interface in order to do NTLM and Kerberos authentication.
23 lines (21 loc) • 689 B
text/typescript
import { sspi } from '..';
/**
* Test if the current user token has admin privileges.
*
* If this function return false, it means that operations that
* requires admin rights cannot be done, even if the account is
* configured with admin right. Functions that require admin right
* would return the error 5 (admin right required).
*
* Example: `netapi.NetUserAdd` function can be called only
* if the user token has admin privilege.
*
* @export
* @returns {boolean}
*/
export function hasAdminPrivileges(): boolean {
const sid = sspi.AllocateAndInitializeSid();
const result = sspi.CheckTokenMembership(sid);
sspi.FreeSid(sid);
return result;
}