共用方式為


對應 Posix 識別碼

Posix 子系統必須能夠將它遇到的任何 安全性識別碼 (SID) 轉譯為 32 位值,稱為 Posix ID。 此外,它必須能夠將標識元分類為使用者標識碼或群組標識碼。 若要瞭解此對應如何完成,我們先來看一下必須對應的安全識別碼 (SIDs)。

SID 有兩個元件:網域的 SID,以及網域中帳戶的相對標識符。 例如,在 SID S-1-518364-21-43-8 中,最後一個數位 8 是帳戶的相對標識碼(RID),而 S-1-518364-21-43 是網域的 SID。

網域資訊會儲存在 TrustedDomain 物件中。 儲存在 TrustedDomain 物件中的部分資訊,是用於該網域內 SID 的 Posix ID 位移。 例如,假設 TrustedDomain 的定義如下:

    Name:    NtPgm
    Sid:    S-1-518364-21-43
    Posix Offset:    0x130000

此網域中帳戶的 Posix 識別碼會透過將 0x130000 加到帳戶的相對識別碼上來產生。 因此,對應至 SID S-1-518364-21-43-8 的 Posix 識別碼將會0x130008。

並非所有 Posix 識別符轉譯都會使用 TrustedDomain 物件。 下表顯示使用已知偏移值所對應的 SID。

POSIX 識別碼位移
來自內建網域的安全識別碼 (SID) 0x20000
帳戶網域中的安全性識別碼 (SID) 0x30000
來自主要網域的安全識別碼(僅限於工作站) 0x40000

 

最後,另一組 SID 登入 SID 需要特殊處理。 這些值是由 Windows 登入程序為每個登入會話指派的,並具有 S-1-5-5-X-Y 的格式,其中 X 和 Y 被視為一個會在每次登入會話中遞增的單一 LARGE_INTEGER。 這些 SID 會對應至常數 Posix 識別碼0xFFF。 若要映射 Posix 識別碼 0xFFF,您可以選擇依據情況轉譯任何一個 登入標識碼,或者預設為使用 S-1-5-5-0-0。 (例如,如果 posix 使用者將保護套用至物件並指定 FFFx,最好替代該使用者的登入識別碼,而非僅僅指派 S-1-5-5-0-0。)