IOCTL_EHSTOR_BANDMGMT_SET_BAND_SECURITY IOCTL (ehstorbandmgmt.h)
Die Sicherheitseigenschaften von Bändern auf einem bandverwalteten Speichergerät werden mit der IOCTL_EHSTOR_BANDMGMT_SET_BAND_SECURITY-Anforderung geändert.
Hauptcode
Eingabepuffer
Der Puffer bei Irp-AssociatedIrp.SystemBuffer> muss eine SET_BAND_SECURITY_PARAMETERS-Struktur gefolgt von den AUTH_KEY- und BAND_SECURITY_INFO-Strukturen enthalten.
Wenn das AuthKeyOffset-Element von SET_BAND_SECURITY_PARAMETERS auf EHSTOR_BANDMGR_NO_KEY festgelegt ist, müssen die Eingabedaten im Systempuffer keine AUTH_KEY-Struktur enthalten. Wenn kein neuer Authentifizierungsschlüssel angegeben wird, ist auch keine aktualisierte Schlüsselstruktur enthalten.
Eingabepufferlänge
Parameters.DeviceIoControl.InputBufferLength gibt die Größe des Puffers in Bytes an, die mindestens sizeof (SET_BAND_SECURITY_PARAMETERS) + 2 * sizeof(AUTH_KEY) + sizeof(BAND_SECURITY_INFO) sein muss, wenn alle Eingabestrukturen erforderlich sind.
Ausgabepuffer
Keine.
Länge des Ausgabepuffers
Keine.
Statusblock
Einer der folgenden Werte kann im Feld Status zurückgegeben werden.
Statuswert | BESCHREIBUNG |
---|---|
STATUS_SUCCESS | Die Sicherheitseigenschaften für das Band wurden geändert. |
STATUS_INVALID_DEVICE_REQUEST | Das Speichergerät unterstützt keine Bandverwaltung. |
STATUS_INVALID_BUFFER_SIZE | Die Eingabepuffergröße ist ungültig. |
STATUS_INVALID_PARAMETER | Die Informationen im Eingabepuffer sind ungültig. |
STATUS_NOT_FOUND | Für die angegebenen Auswahlkriterien wurde kein Band gefunden. |
STATUS_ACCESS_DENIED | Der angegebene Authentifizierungsschlüssel ist ungültig. |
STATUS_IO_DEVICE_ERROR | Fehler bei der Kommunikation. Das Speichergerät ist möglicherweise nicht mit Sicherheitsprotokollen kompatibel. |
Hinweise
Das Sperren und Entsperren von Lese- und Schreibvorgängen für Bänder wird mit dieser IOCTL in der BAND_SECURITY_INFO Struktur festgelegt, die als Eingabe im Systempuffer enthalten ist.
Änderungen an Authentifizierungsschlüsseln wirken sich nicht auf den Sperrstatus des Bandes aus. Es ist nicht erforderlich, die Bereitstellung eines Volumes aufzuheben, um einen Authentifizierungsschlüssel mit dieser Anforderung zu ändern.
Wenn ein Band entsperrt ist, was bedeutet, dass die Readlock - oder WriteLock-Member von BAND_SECURITY_INFO FALSE sind, speichert der Silotreiber den angegebenen Authentifizierungsschlüssel zwischen, wenn SETBANDSEC_AUTHKEY_CACHING_ENABLED im Flags-Element von SET_BAND_SECURITY_PARAMETERS festgelegt ist.
Als Sonderfall kann diese IOCTL verwendet werden, um den Silotreiber darüber zu informieren, dass ein Band entsperrt wurde, ohne die Sperrmitglieder in BAND_SECURITY_INFO zu verwenden. Hierzu wird das NewAuthKeyOffset-Element von SET_BAND_SECURITY_PARAMETERS auf CurrentAuthKeyOffset festgelegt, wobei BandSecurityInfoOffset auf 0 festgelegt ist. In diesem Fall treten keine Sicherheitsänderungen auf, aber der unter CurrentAuthKeyOffset bereitgestellte Schlüssel wird im Arbeitsspeicher zwischengespeichert, vorausgesetzt , dass SETBANDSEC_AUTHKEY_CACHING_ENABLED in Flags festgelegt ist.
Die von dieser Anforderung an der Bandtabelle vorgenommenen Änderungen werden auf das Gerät atomar übertragen, bevor die IOCTL-Anforderung abgeschlossen ist. Daher ist es garantiert, dass das Band geändert wird, wenn alle Eigenschaften festgelegt sind, oder dass keine Eigenschaften festgelegt werden, wenn ein System- oder Stromausfall auftritt.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Verfügbar ab Windows 8 |
Kopfzeile | ehstorbandmgmt.h (einschließlich EhStorBandMgmt.h) |