Freigeben über


IVdsIscsiTarget::SetSharedSecret-Methode (vdshwprv.h)

[Ab Windows 8 und Windows Server 2012 wird die COM-Schnittstelle des Virtuellen Datenträgerdiensts durch die Windows Storage Management-API abgelöst.]

Legt das freigegebene CHAP-Zielgeheimnis fest, das für die CHAP-Authentifizierung verwendet wird, wenn das Ziel den Initiator authentifiziert.

Syntax

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

Parameter

[in] pTargetSharedSecret

Die Adresse einer VDS_ISCSI_SHARED_SECRET Struktur, die das freigegebene Geheimnis enthält. Wenn das pSharedSecret-ElementNULL und ulSharedSecretSize null ist, löscht die SetSharedSecret-Methode alle vorhandenen Geheimnisse.

[in] pwszInitiatorName

Die Zeichenfolge, die den iSCSI-Namen angibt, dem das freigegebene Geheimnis zugeordnet werden soll, wenn das Geheimnis initiatorspezifisch ist. Der übergebene Wert wird als CHAP-Name verwendet. Wenn die Adresse NULL ist, gelten die Änderungen für das Standardgeheimnis für alle Initiatoren.

Rückgabewert

Diese Methode kann HRESULT-Standardwerte wie E_INVALIDARG oder E_OUTOFMEMORY und VDS-spezifische Rückgabewerte zurückgeben. Es kann auch konvertierte Systemfehlercodes mithilfe des makros HRESULT_FROM_WIN32 zurückgeben. Fehler können vom VDS selbst oder vom zugrunde liegenden VDS-Anbieter stammen, der verwendet wird. Folgende Rückgabewerte sind möglich.

Rückgabecode/-wert BESCHREIBUNG
S_OK
Das freigegebene Geheimnis wurde erfolgreich festgelegt.
VDS_E_PROVIDER_CACHE_CORRUPT
0x8004241FL
Der Cache des Anbieters ist beschädigt. Dies weist auf ein Software- oder Kommunikationsproblem innerhalb eines Anbieters hin, der Informationen zu den angefügten Geräten zwischenspeichert. Der Aufrufer kann die IVdsHwProvider::Reenumerate-Methode gefolgt von der IVdsHwProvider::Refresh-Methode verwenden, um den Cache wiederherzustellen.
VDS_E_OBJECT_DELETED
0x8004240BL
Das Zielobjekt ist nicht mehr vorhanden.
VDS_E_NOT_SUPPORTED
0x80042400L
Dieser Vorgang oder eine Kombination von Parametern wird von diesem Anbieter nicht unterstützt.
VDS_E_INITIATOR_SPECIFIC_NOT_SUPPORTED
0x80042707L
Das Ziel unterstützt keine initiatorspezifischen freigegebenen Geheimnisse.

Hinweise

Der Hardwareanbieter muss das Subsystem selbst konfigurieren, um das freigegebene Zielgeheimnis zu ändern. Geheimnisse, die für die Sicherheit verwendet werden, werden von VDS weder beibehalten noch sollten sie von den Hardwareanbietern auf dem lokalen Computer beibehalten werden. Der Hardwareanbieter sollte das Geheimnis auf sichere Weise an das Subsystem übertragen, und das Subsystem ist für die Beibehaltung des Geheimnisses verantwortlich.

Einige iSCSI-Ziele unterstützen möglicherweise das Festlegen eines anderen freigegebenen CHAP-Geheimnisses für jeden Initiator. Wenn ein Ziel keine initiatorspezifischen Geheimnisse unterstützt, gibt der Aufruf von SetSharedSecret VDS_E_INITIATOR_SPECIFIC_NOT_SUPPORTED zurück.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows Vista [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows Server 2003 R2 [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile vdshwprv.h
Bibliothek Uuid.lib
Verteilbare Komponente VDS 1.1

Weitere Informationen

IVdsIscsiTarget

IVdsIscsiTarget::RememberInitiatorSharedSecret

IVdsIscsiTarget::SetSharedSecret

IVdsServiceIscsi::SetInitiatorSharedSecret

VDS_ISCSI_SHARED_SECRET