Componentes sid

Um valor sid inclui componentes que fornecem informações sobre a estrutura de SID e componentes que identificam exclusivamente um objeto de confiança. Um SID consiste nos seguintes componentes:

  • O nível de revisão da estrutura SID
  • Um valor de autoridade de identificador de 48 bits que identifica a autoridade que emitiu o SID
  • Um número variável de valores de subautoridade ou RID ( identificador relativo ) que identificam exclusivamente o objeto de confiança em relação à autoridade que emitiu o SID

A combinação do valor de autoridade do identificador e os valores de subautoridade garante que nenhum dos dois SIDs seja o mesmo, mesmo que duas autoridades emissoras de SID diferentes emitam a mesma combinação de valores RID. Cada autoridade emissora de SID emite um determinado RID apenas uma vez.

Os SIDs são armazenados em formato binário em uma estrutura SID . Para exibir um SID, você pode chamar a função ConvertSidToStringSid para converter um SID binário em formato de cadeia de caracteres. Para converter uma cadeia de caracteres SID de volta em um SID funcional válido, chame a função ConvertStringSidToSid .

Essas funções usam a seguinte notação de cadeia de caracteres padronizada para SIDs, o que torna mais simples visualizar seus componentes:

S-R-I-S...

Nessa notação, o caractere literal "S" identifica a série de dígitos como um SID, R é o nível de revisão, I é o valor de autoridade de identificador e S... é um ou mais valores de subautoridade.

O exemplo a seguir usa essa notação para exibir o SID relativo ao domínio conhecido do grupo local Administradores:

S-1-5-32-544

Neste exemplo, o SID tem os seguintes componentes. As constantes entre parênteses são autoridade de identificador bem conhecida e valores RID definidos em Winnt.h:

  • Um nível de revisão de 1
  • Um valor de autoridade de identificador de 5 (SECURITY_NT_AUTHORITY)
  • Um primeiro valor de subautoridade de 32 (SECURITY_BUILTIN_DOMAIN_RID)
  • Um segundo valor de subautoridade de 544 (DOMAIN_ALIAS_RID_ADMINS)