Compartilhar via


Método IVdsIscsiTarget::SetSharedSecret (vdshwprv.h)

[Começando com Windows 8 e Windows Server 2012, a interface COM do Serviço de Disco Virtual é substituída pela API de Gerenciamento de Armazenamento do Windows.]

Define o segredo compartilhado CHAP de destino usado para autenticação CHAP quando o destino autentica o iniciador.

Sintaxe

HRESULT SetSharedSecret(
  [in] VDS_ISCSI_SHARED_SECRET *pTargetSharedSecret,
  [in] LPWSTR                  pwszInitiatorName
);

Parâmetros

[in] pTargetSharedSecret

O endereço de uma estrutura VDS_ISCSI_SHARED_SECRET que contém o segredo compartilhado. Se o membro pSharedSecret for NULL e ulSharedSecretSize for zero, o método SetSharedSecret limpará qualquer segredo existente.

[in] pwszInitiatorName

A cadeia de caracteres que especifica o nome iSCSI ao qual o segredo compartilhado deve ser associado, se o segredo for específico do iniciador. O valor passado é usado como o nome CHAP. Se o endereço for NULL , as alterações se aplicarão ao segredo padrão para todos os iniciadores.

Retornar valor

Esse método pode retornar valores HRESULT padrão, como E_INVALIDARG ou E_OUTOFMEMORY, e valores retornados específicos do VDS. Ele também pode retornar códigos de erro do sistema convertidos usando a macro HRESULT_FROM_WIN32 . Os erros podem se originar do próprio VDS ou do provedor de VDS subjacente que está sendo usado. Os possíveis valores retornados incluem o seguinte.

Valor/código retornado Descrição
S_OK
O segredo compartilhado foi definido com êxito.
VDS_E_PROVIDER_CACHE_CORRUPT
0x8004241FL
O cache do provedor está corrompido. Isso indica um problema de software ou comunicação dentro de um provedor que armazena em cache informações sobre os dispositivos anexados. O chamador pode usar o método IVdsHwProvider::Reenumerate seguido pelo método IVdsHwProvider::Refresh para restaurar o cache.
VDS_E_OBJECT_DELETED
0x8004240BL
O objeto de destino não está mais presente.
VDS_E_NOT_SUPPORTED
0x80042400L
Essa operação ou combinação de parâmetros não é compatível com esse provedor.
VDS_E_INITIATOR_SPECIFIC_NOT_SUPPORTED
0x80042707L
O destino não dá suporte a segredos compartilhados específicos do iniciador.

Comentários

O provedor de hardware deve configurar o próprio subsistema para alterar o segredo compartilhado de destino. Os segredos usados para segurança não são persistidos pelo VDS nem devem ser mantidos pelos provedores de hardware no computador local. O provedor de hardware deve transmitir o segredo para o subsistema de maneira segura e o subsistema é responsável por mantê-lo.

Alguns destinos iSCSI podem dar suporte à configuração de um segredo compartilhado CHAP diferente para cada iniciador. Se um destino não der suporte a segredos específicos do iniciador, a chamada para SetSharedSecret retornará VDS_E_INITIATOR_SPECIFIC_NOT_SUPPORTED.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows Vista [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows Server 2003 R2 [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho vdshwprv.h
Biblioteca Uuid.lib
Redistribuível VDS 1.1

Confira também

IVdsIscsiTarget

IVdsIscsiTarget::RememberInitiatorSharedSecret

IVdsIscsiTarget::SetSharedSecret

IVdsServiceIscsi::SetInitiatorSharedSecret

VDS_ISCSI_SHARED_SECRET