/// <summary> /// Get SIDs associated with an account right. /// </summary> /// <param name="account_right">The name of the account right, such as SeImpersonatePrivilege.</param> /// <param name="throw_on_error">True to throw on error.</param> /// <returns>The list of SIDs assigned to the account right.</returns> public static NtResult <IEnumerable <Sid> > GetAccountRightSids(string account_right, bool throw_on_error) { return(AccountRight.GetSids(null, account_right, throw_on_error).Map <IEnumerable <Sid> >(s => s.AsReadOnly())); }
/// <summary> /// Remove account rights from a user. /// </summary> /// <param name="sid">The user SID to remove.</param> /// <param name="account_rights">The list of account rights.</param> /// <param name="throw_on_error">True to throw on error.</param> /// <returns>The NT status code.</returns> public static NtStatus RemoveAccountRights(Sid sid, IEnumerable <string> account_rights, bool throw_on_error) { return(AccountRight.RemoveAccountRights(null, sid, false, account_rights, throw_on_error)); }
/// <summary> /// Get account rights assigned to a SID. /// </summary> /// <param name="sid">The SID to query.</param> /// <param name="throw_on_error">True to throw on error.</param> /// <returns>The list of account rights.</returns> public static NtResult <IEnumerable <AccountRight> > GetAccountRights(Sid sid, bool throw_on_error) { return(AccountRight.GetAccountRights(null, sid, throw_on_error)); }