Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Classe
Essa classe é um wrapper para uma estrutura SID (identificador de segurança).
Importante
Essa classe e seus membros não podem ser usados em aplicativos executados no Windows Runtime.
Sintaxe
class CSid;
Membros
Typedefs públicos
| Nome | Descrição |
|---|---|
CSid::CSidArray |
Uma matriz de objetos CSid. |
Construtores públicos
| Nome | Descrição |
|---|---|
CSid::CSid |
O construtor . |
CSid::~CSid |
O destruidor. |
Métodos públicos
| Nome | Descrição |
|---|---|
CSid::AccountName |
Retorna o nome da conta associada ao objeto CSid. |
CSid::Domain |
Retorna o nome do domínio associado ao objeto CSid. |
CSid::EqualPrefix |
Testes SID (identificador de segurança) prefixos para igualdade. |
CSid::GetLength |
Retorna o comprimento do objeto CSid. |
CSid::GetPSID |
Retorna um ponteiro para uma estrutura SID. |
CSid::GetPSID_IDENTIFIER_AUTHORITY |
Retorna um ponteiro para a estrutura SID_IDENTIFIER_AUTHORITY. |
CSid::GetSubAuthority |
Retorna uma subautoridade especificada em uma estrutura SID. |
CSid::GetSubAuthorityCount |
Retorna a contagem de subautoridade. |
CSid::IsValid |
Testa o objeto CSid para validade. |
CSid::LoadAccount |
Atualiza o objeto CSid, considerando o nome da conta ou domínio, ou uma estrutura SID existente. |
CSid::Sid |
Retorna a cadeia de caracteres de ID. |
CSid::SidNameUse |
Retorna uma descrição do estado do objeto CSid. |
Operadores
| Nome | Descrição |
|---|---|
CSid::operator = |
Operador de atribuição. |
CSid::operator const SID * |
Converte um objeto CSid em um ponteiro para uma estrutura SID. |
Operadores Globais
| Nome | Descrição |
|---|---|
operator == |
Testa dois objetos descritores de segurança para igualdade |
operator != |
Testa dois objetos descritores de segurança para desigualdade |
operator < |
Compara o valor relativo de dois objetos descritores de segurança. |
operator > |
Compara o valor relativo de dois objetos descritores de segurança. |
operator <= |
Compara o valor relativo de dois objetos descritores de segurança. |
operator >= |
Compara o valor relativo de dois objetos descritores de segurança. |
Comentários
A estrutura SID é uma estrutura de comprimento variável usada para identificar exclusivamente usuários ou grupos.
Os aplicativos não devem modificar a estrutura SID diretamente, mas usar os métodos fornecidos nesta classe wrapper. Consulte também AtlGetOwnerSid, AtlSetGroupSid, AtlGetGroupSid, e AtlSetOwnerSid.
Para ver uma introdução ao modelo de controle de acesso no Windows, confira Controle de Acesso no SDK do Windows.
Requisitos
Cabeçalho: atlsecurity.h
CSid::AccountName
Retorna o nome da conta associada ao objeto CSid.
LPCTSTR AccountName() const throw(...);
Valor retornado
Retorna o apontamento LPCTSTR para o nome da conta.
Comentários
Esse método tenta encontrar um nome para o SID especificado (identificador de segurança). Para obter detalhes completos, consulte LookupAccountSid.
Se nenhum nome de conta para SID for encontrado, AccountName retornará uma cadeia de caracteres vazia. Esse resultado pode ocorrer se um tempo limite de rede impedir que esse método localize o nome. Também ocorre para identificadores de segurança sem nome de conta correspondente, como um SID que identifica uma sessão de entrada.
CSid::CSid
O construtor .
CSid() throw();
CSid(const SID& rhs) throw(...);
CSid(const CSid& rhs) throw(...);
CSid(
const SID_IDENTIFIER_AUTHORITY& IdentifierAuthority,
BYTE nSubAuthorityCount,
...) throw(...);
explicit CSid(
LPCTSTR pszAccountName,
LPCTSTR pszSystem = NULL) throw(...);
explicit CSid(
const SID* pSid,
LPCTSTR pszSystem = NULL) throw(...);
Parâmetros
rhs
Um objeto CSid existente ou uma estrutura SID (identificador de segurança).
IdentifierAuthority
A autoridade.
nSubAuthorityCount
A contagem de subautoridade.
pszAccountName
O nome da conta.
pszSystem
Nome do sistema de arquivos. Essa cadeia de caracteres pode ser o nome de um computador remoto. Se essa cadeia de caracteres for NULL, o sistema local será usado.
pSid
Um ponteiro para uma estrutura SID.
Comentários
O construtor inicializa o objeto CSid, definindo um membro de dados interno para SidTypeInvalid, ou copiando as configurações de um CSid existente, SID, ou conta existente.
Se a inicialização falhar, o construtor lançará uma CAtlException Classe.
CSid::~CSid
O destruidor.
virtual ~CSid() throw();
Comentários
O destruidor libera todos os recursos adquiridos pelo objeto.
CSid::CSidArray
Uma matriz de objetos CSid.
typedef CAtlArray<CSid> CSidArray;
Comentários
Esse typedef especifica o tipo de matriz que pode ser usado para recuperar identificadores de segurança de uma ACL (lista de controle de acesso). Consulte CAcl::GetAclEntries.
CSid::Domain
Retorna o nome do domínio associado ao objeto CSid.
LPCTSTR Domain() const throw(...);
Valor retornado
Retorna o apontamento LPCTSTR para o domínio.
Comentários
Esse método tenta encontrar um nome para o SID especificado (identificador de segurança). Para obter detalhes completos, consulte LookupAccountSid.
Se nenhum nome de conta para SID for encontrado, Domain retornará o domínio como uma cadeia de caracteres vazia. Esse resultado pode ocorrer se um tempo limite de rede impedir que esse método localize o nome. Também ocorre para identificadores de segurança sem nome de conta correspondente, como um SID que identifica uma sessão de entrada.
CSid::EqualPrefix
Testes SID (identificador de segurança) prefixos para igualdade.
bool EqualPrefix(const SID& rhs) const throw();
bool EqualPrefix(const CSid& rhs) const throw();
Parâmetros
rhs
A estrutura SID (identificador de segurança) ou o objeto CSid a ser comparado.
Valor retornado
Retornará TRUE se for bem-sucedido, FALSE em caso de falha.
Comentários
Para obter mais informações, consulte EqualPrefixSid.
CSid::GetLength
Retorna o comprimento do objeto CSid.
UINT GetLength() const throw();
Valor retornado
Retorna o comprimento em bytes do objeto CSid.
Comentários
Se a estrutura CSid não for válida, o valor retornado será indefinido. Antes de chamar GetLength, use a função CSid::IsValid membro para verificar se CSid é válido.
Observação
Em compilações de depuração, a função causará um ASSERT se o objeto CSid não for válido.
CSid::GetPSID
Retorna um ponteiro para uma estrutura SID (identificador de segurança).
const SID* GetPSID() const throw(...);
Valor retornado
Retorna o endereço da estrutura CSid subjacente SID do objeto.
CSid::GetPSID_IDENTIFIER_AUTHORITY
Retorna um ponteiro para a estrutura SID_IDENTIFIER_AUTHORITY.
const SID_IDENTIFIER_AUTHORITY* GetPSID_IDENTIFIER_AUTHORITY() const throw();
Valor retornado
Se o método for bem-sucedido, ele retornará o endereço da estrutura SID_IDENTIFIER_AUTHORITY. Se falhar, o valor retornado será indefinido. A falha poderá ocorrer se o objeto CSid não for válido, nesse caso, o método CSid::IsValid retornará FALSE. A função GetLastError pode ser chamada para obter informações de erro estendidas.
Observação
Em compilações de depuração, a função causará um ASSERT se o objeto CSid não for válido.
CSid::GetSubAuthority
Retorna uma subautoridade especificada em uma estrutura SID (identificador de segurança).
DWORD GetSubAuthority(DWORD nSubAuthority) const throw();
Parâmetros
nSubAuthority
A subautoridade.
Valor retornado
Retorna a subautoridade referenciada por nSubAuthority. O valor de subautoridade é umidentificador relativo (RID).
Comentários
O parâmetro nSubAuthority especifica um valor de índice que identifica o elemento de matriz de subautoridade que o método retornará. O método não executa nenhum teste de validação nesse valor. Um aplicativo pode chamar CSid::GetSubAuthorityCount para descobrir o intervalo de valores aceitáveis.
Observação
Em compilações de depuração, a função causará um ASSERT se o objeto CSid não for válido.
CSid::GetSubAuthorityCount
Retorna a contagem de subautoridade.
UCHAR GetSubAuthorityCount() const throw();
Valor retornado
Se o método for bem-sucedido, o valor retornado será a contagem de subautoridade.
Se o método falhar, o valor retornado será indefinido. O método falhará se o objeto CSid for inválido. Para obter outras informações sobre o erro, chame GetLastError.
Observação
Em compilações de depuração, a função causará um ASSERT se o objeto CSid não for válido.
CSid::IsValid
Testa o objeto CSid para validade.
bool IsValid() const throw();
Valor retornado
Retorna TRUE se o objeto CSid for válido, FALSE se não. Não há informações de erro estendidas para este método, não chame GetLastError.
Comentários
O método IsValid valida o objeto CSid verificando se o número de revisão está dentro de um intervalo conhecido e se o número de subautoridades é menor que o máximo.
CSid::LoadAccount
Atualiza o objeto CSid, considerando o nome da conta e o domínio ou uma estrutura SID existente (identificador de segurança).
bool LoadAccount(
LPCTSTR pszAccountName,
LPCTSTR pszSystem = NULL) throw(...);
bool LoadAccount(
const SID* pSid,
LPCTSTR pszSystem = NULL) throw(...);
Parâmetros
pszAccountName
O nome da conta.
pszSystem
Nome do sistema de arquivos. Essa cadeia de caracteres pode ser o nome de um computador remoto. Se essa cadeia de caracteres for NULL, o sistema local será usado.
pSid
Um ponteiro para uma estrutura SID.
Valor retornado
Retornará TRUE se for bem-sucedido, FALSE em caso de falha. Para obter outras informações sobre o erro, chame GetLastError.
Comentários
LoadAccount tenta encontrar um identificador de segurança para o nome especificado. Para obter mais informações, consulte LookupAccountSid.
CSid::operator =
Operador de atribuição.
CSid& operator= (const CSid& rhs) throw(...);
CSid& operator= (const SID& rhs) throw(...);
Parâmetros
rhs
O SID (identificador de segurança) ou CSid para atribuir ao objeto CSid.
Valor retornado
Retorna uma referência ao objeto CSid atualizado.
operator ==
Testa dois objetos descritores de segurança para igualdade.
bool operator==(
const CSid& lhs,
const CSid& rhs) throw();
Parâmetros
lhs
O SID (identificador de segurança) ou CSid que aparece no lado esquerdo do operador ==.
rhs
O SID (identificador de segurança) ou CSid que aparece no lado direito do operador ==.
Valor retornado
TRUE se os descritores de segurança forem iguais, caso contrário FALSE.
operator !=
Testa dois objetos descritores de segurança para desigualdade.
bool operator!=(
const CSid& lhs,
const CSid& rhs) throw();
Parâmetros
lhs
O SID (identificador de segurança) ou CSid que aparece no lado esquerdo do operador !=.
rhs
O SID (identificador de segurança) ou CSid que aparece no lado direito do operador !=.
Valor retornado
TRUE se os descritores de segurança não forem iguais, caso contrário FALSE.
operator <
Compara o valor relativo de dois objetos descritores de segurança.
bool operator<(
const CSid& lhs,
const CSid& rhs) throw();
Parâmetros
lhs
O SID (identificador de segurança) ou CSid que aparece no lado esquerdo do operador <.
rhs
O SID (identificador de segurança) ou CSid que aparece no lado direito do operador <.
Valor retornado
TRUE se lhs for menor que rhs, caso contrário, FALSE.
operator <=
Compara o valor relativo de dois objetos descritores de segurança.
bool operator<=(
const CSid& lhs,
const CSid& rhs) throw();
Parâmetros
lhs
O SID (identificador de segurança) ou CSid que aparece no lado esquerdo do operador <=.
rhs
O SID (identificador de segurança) ou CSid que aparece no lado direito do operador <=.
Valor retornado
TRUE se lhs for menor ou igual a rhs, caso contrário, FALSE.
operator >
Compara o valor relativo de dois objetos descritores de segurança.
bool operator>(
const CSid& lhs,
const CSid& rhs) throw();
Parâmetros
lhs
O SID (identificador de segurança) ou CSid que aparece no lado esquerdo do operador >.
rhs
O SID (identificador de segurança) ou CSid que aparece no lado direito do operador >.
Valor retornado
TRUE se lhs for maior que rhs, caso contrário, FALSE.
operator >=
Compara o valor relativo de dois objetos descritores de segurança.
bool operator>=(
const CSid& lhs,
const CSid& rhs) throw());
Parâmetros
lhs
O SID (identificador de segurança) ou CSid que aparece no lado esquerdo do operador >=.
rhs
O SID (identificador de segurança) ou CSid que aparece no lado direito do operador >=.
Valor retornado
TRUE se lhs for maior ou igual a rhs, caso contrário, FALSE.
CSid::operator const SID *
Converte um objeto CSid em um ponteiro para uma estrutura SID (identificador de segurança).
operator const SID *() const;
Comentários
Retorna o endereço da estrutura SID.
CSid::Sid
Retorna a estrutura SID (identificador de segurança) como uma cadeia de caracteres.
LPCTSTR Sid() const throw(...);
Valor retornado
Retorna a estrutura SID como uma cadeia de caracteres em um formato adequado para exibição, armazenamento ou transmissão. Equivalente a ConvertSidToStringSid.
CSid::SidNameUse
Retorna uma descrição do estado do objeto CSid.
SID_NAME_USE SidNameUse() const throw();
Valor retornado
Retorna o valor do membro de dados que armazena um valor que descreve o estado do objeto CSid.
| Valor | Descrição |
|---|---|
| SidTypeUser | Indica um usuário SID (identificador de segurança). |
| SidTypeGroup | Indica um grupo SID. |
| SidTypeDomain | Indica um domínio SID. |
| SidTypeAlias | Indica um alias SID. |
| SidTypeWellKnownGroup | Indica um SID para um grupo bem conhecido. |
| SidTypeDeletedAccount | Indica um SID para uma conta excluída. |
| SidTypeInvalid | Indica um SID inválido. |
| SidTypeUnknown | Indica um tipo SID desconhecido. |
| SidTypeComputer | Indica um SID para um computador. |
Comentários
Chame CSid::LoadAccount para atualizar o objeto CSid antes de chamar SidNameUse para retornar seu estado. SidNameUse não altera o estado do objeto (ao chamar LookupAccountName ou LookupAccountSid), mas retorna apenas o estado atual.
Confira também
Amostra de segurança
Visão geral de classe
Funções globais de segurança
Operadores