Platform SDK: Access Control

InitializeSid

The InitializeSid function initializes a SID. (A SID is a security identifier.)

BOOL InitializeSid(
  PSID Sid,                                       // SID
  PSID_IDENTIFIER_AUTHORITY pIdentifierAuthority, // SIA
  BYTE nSubAuthorityCount                         // count of subauthorities
);

Parameters

Sid
[out] Pointer to a SID structure to be initialized.
pIdentifierAuthority
[in] Pointer to a SID_IDENTIFIER_AUTHORITY structure to set in the SID structure.
nSubAuthorityCount
[in] Specifies the number of subauthorities to set in the SID. Values of the subauthority must be set separately, as described in the following Remarks section.

Return Values

If the function succeeds, the return value is nonzero.

If the function fails, the return value is zero. To get extended error information, call GetLastError.

Remarks

Although the InitializeSid function sets the number of subauthorities for the SID, it does not set the subauthority values. This must be done separately, using functions, such as GetSidSubAuthority.

An application can use the AllocateAndInitializeSid function to initialize a SID and set its subauthority values.

Requirements

  Windows NT/2000: Requires Windows NT 3.1 or later.
  Header: Declared in Winbase.h; include Windows.h.
  Library: Use Advapi32.lib.

See Also

Access Control Overview, Access Control Functions, AllocateAndInitializeSid, GetLengthSid, GetSidIdentifierAuthority, GetSidLengthRequired, GetSidSubAuthority, GetSidSubAuthorityCount, IsValidSid, SID, SID_IDENTIFIER_AUTHORITY