Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Der List Blobs Vorgang gibt eine Liste der Blobs unter dem angegebenen Container zurück.
Bitten
Sie können die List Blobs Anforderung wie folgt erstellen. HTTPS wird empfohlen. Ersetzen Sie myaccount durch den Namen Ihres Speicherkontos.
| Methode | Anforderungs-URI | HTTP-Version |
|---|---|---|
GET |
https://myaccount.blob.core.windows.net/mycontainer?restype=container&comp=list |
HTTP/1.1 |
Emulierter Speicherdienst-URI
Wenn Sie eine Anforderung an den emulierten Speicherdienst senden, geben Sie den Hostnamen des Emulators und den Azure Blob Storage-Port als 127.0.0.1:10000an, gefolgt vom Namen des emulierten Speicherkontos.
| Methode | Anforderungs-URI | HTTP-Version |
|---|---|---|
GET |
http://127.0.0.1:10000/devstoreaccount1/mycontainer?restype=container&comp=list |
HTTP/1.1 |
Weitere Informationen finden Sie unter Verwenden des Azurite-Emulators für die lokale Azure Storage-Entwicklung.
URI-Parameter
Sie können die folgenden zusätzlichen Parameter für den URI angeben.
| Parameter | Beschreibung |
|---|---|
prefix |
Wahlfrei. Filtert die Ergebnisse, um nur Blobs mit Namen zurückzugeben, die mit dem angegebenen Präfix beginnen. Bei Konten mit einem hierarchischen Namespace tritt ein Fehler in Fällen auf, in denen der Name einer Datei in der Mitte des Präfixpfads angezeigt wird. Sie können z. B. versuchen, Blobs zu finden, die mit readmefile.txt dem Präfix path folder1/folder2/readme/readmefile.txt. Ein Fehler wird angezeigt, wenn ein Unterordner eine Datei mit dem Namen readme. |
delimiter |
Wahlfrei. Wenn die Anforderung diesen Parameter enthält, gibt der Vorgang ein BlobPrefix Element im Antworttext zurück. Dieses Element fungiert als Platzhalter für alle Blobs mit Namen, die mit derselben Teilzeichenfolge beginnen, bis zur Darstellung des Trennzeichens. Das Trennzeichen kann ein einzelnes Zeichen oder eine Zeichenfolge sein. |
marker |
Wahlfrei. Ein Zeichenfolgenwert, der den Teil der Liste identifiziert, der mit dem nächsten Listenvorgang zurückgegeben werden soll. Der Vorgang gibt einen Markierungswert im Antworttext zurück, wenn die zurückgegebene Liste nicht abgeschlossen wurde. Anschließend können Sie den Markierungswert in einem nachfolgenden Aufruf verwenden, um den nächsten Satz von Listenelementen anzufordern. Der Markerwert ist für den Client nicht transparent. |
maxresults |
Wahlfrei. Gibt die maximale Anzahl von Blobs an, die zurückgegeben werden sollen, einschließlich aller BlobPrefix Elemente. Wenn die Anforderung nicht maxresultsangibt oder einen Wert größer als 5.000 angibt, gibt der Server bis zu 5.000 Elemente zurück. Wenn zusätzliche Ergebnisse zurückgegeben werden müssen, gibt der Dienst ein Fortsetzungstoken im NextMarker Antwortelement zurück. In bestimmten Fällen gibt der Dienst möglicherweise weniger Ergebnisse als von angegeben maxresultszurück und gibt auch ein Fortsetzungstoken zurück.Das Festlegen maxresults auf einen Wert kleiner oder gleich Null führt zu Fehlerantwortcode 400 (ungültige Anforderung). |
include={snapshots,metadata,uncommittedblobs,copy,deleted,tags,versions,deletedwithversions,immutabilitypolicy,legalhold,permissions} |
Wahlfrei. Gibt ein oder mehrere Datasets an, die in die Antwort eingeschlossen werden sollen: - snapshots: Gibt an, dass Momentaufnahmen in die Enumeration eingeschlossen werden sollen. Momentaufnahmen werden von der ältesten bis zur neuesten in der Antwort aufgelistet.- metadata: Gibt an, dass Blobmetadaten in der Antwort zurückgegeben werden.- uncommittedblobs: Gibt an, dass Blobs, für die Blöcke hochgeladen wurden, für die jedoch kein Commit mithilfe von Put Block List ausgeführt wurde, in die Antwort eingeschlossen werden.- copy: Version 2012-02-12 und höher. Gibt an, dass Metadaten, die sich auf einen aktuellen oder vorherigen Copy Blob Vorgang beziehen, in die Antwort eingeschlossen werden sollen.- deleted: Version 2017-07-29 und höher. Gibt an, dass vorläufig gelöschte Blobs in die Antwort eingeschlossen werden sollen. - tags: Version 2019-12-12 und höher. Gibt an, dass benutzerdefinierte BLOB-Indextags in die Antwort eingeschlossen werden sollen. - versions: Version 2019-12-12 und höher. Gibt an, dass Versionen von Blobs in die Enumeration eingeschlossen werden sollen.- deletedwithversions: Version 2020-10-02 und höher. Gibt an, dass gelöschte Blobs mit allen Versionen (aktiv oder gelöscht) in die Antwort einbezogen werden sollen. Elemente, die Sie endgültig gelöscht haben, werden in der Antwort angezeigt, bis sie von der Garbage Collection verarbeitet werden. Verwenden Sie das Tag \<HasVersionsOnly\>und den Wert true. - immutabilitypolicy: Version 2020-06-12 und höher. Gibt an, dass die Enumeration die Unveränderlichkeitsrichtlinie bis zum Datum und den Unveränderlichkeitsrichtlinienmodus der Blobs enthalten soll.- legalhold: Version 2020-06-12 und höher. Gibt an, dass die Enumeration den rechtlichen Halteraum von Blobs enthalten soll.- permissions: Version 2020-06-12 und höher. Wird nur für Konten mit aktiviertem hierarchischen Namespace unterstützt. Wenn eine Anforderung diesen Parameter enthält, werden der Besitzer, die Gruppe, die Berechtigungen und die Zugriffssteuerungsliste für die aufgelisteten Blobs oder Verzeichnisse in die Enumeration aufgenommen. Wenn Sie mehr als eine dieser Optionen für den URI angeben möchten, müssen Sie jede Option durch ein URL-codiertes Komma ("%82") trennen. |
showonly={deleted,files,directories} |
Wahlfrei. Gibt einen dieser Datasets an, die in der Antwort zurückgegeben werden sollen: - deleted:Wahlfrei. Version 2020-08-04 und höher. Nur für Konten, die mit hierarchischem Namespace aktiviert sind. Wenn eine Anforderung diesen Parameter enthält, enthält die Liste nur vorläufig gelöschte Blobs. Beachten Sie, dass POSIX ACL-Autorisierungsfallback für die Auflistung vorläufig gelöschter Blobs nicht unterstützt wird. Wenn include=deleted auch angegeben ist, schlägt die Anforderung mit Ungültiger Anforderung (400) fehl.- files:Wahlfrei. Version 2020-12-06 und höher. Nur für Konten, die mit hierarchischem Namespace aktiviert sind. Wenn eine Anforderung diesen Parameter enthält, enthält die Liste nur Dateien. - directories:Wahlfrei. Version 2020-12-06 und höher. Nur für Konten, die mit hierarchischem Namespace aktiviert sind. Wenn eine Anforderung diesen Parameter enthält, enthält die Liste nur Verzeichnisse. |
timeout |
Wahlfrei. Der parameter timeout wird in Sekunden ausgedrückt. Weitere Informationen finden Sie unter Festlegen von Timeouts für Blob Storage-Vorgänge. |
Anforderungsheader
In der folgenden Tabelle werden die erforderlichen und optionalen Anforderungsheader beschrieben.
| Anforderungsheader | Beschreibung |
|---|---|
Authorization |
Erforderlich. Gibt das Autorisierungsschema, den Kontonamen und die Signatur an. Weitere Informationen finden Sie unter Autorisieren von Anforderungen an Azure Storage. |
Date oder x-ms-date |
Erforderlich. Gibt die koordinierte Weltzeit (UTC) für die Anforderung an. Weitere Informationen finden Sie unter Autorisieren von Anforderungen an Azure Storage. |
x-ms-version |
Erforderlich für alle autorisierten Anforderungen und optional für anonyme Anforderungen. Gibt die Version des Vorgangs an, der für diese Anforderung verwendet werden soll. Weitere Informationen finden Sie unter Versionsverwaltung für die Azure Storage-Dienste. |
x-ms-client-request-id |
Wahlfrei. Stellt einen vom Client generierten, undurchsichtigen Wert mit einem 1-Kibibyte-Zeichenlimit (KiB) bereit, der in den Protokollen aufgezeichnet wird, wenn die Protokollierung konfiguriert ist. Es wird dringend empfohlen, diesen Header zu verwenden, um clientseitige Aktivitäten mit Anforderungen zu korrelieren, die der Server empfängt. Weitere Informationen finden Sie unter Überwachen von Azure Blob Storage. |
x-ms-upn |
Wahlfrei. Nur gültig, wenn ein hierarchischer Namespace für das Konto aktiviert ist und include=permissions in der Anforderung angegeben wird. Wenn true, werden die in den <Feldern "Besitzer>", <"Gruppe>" und <"Acl"> zurückgegebenen Benutzeridentitätswerte von Microsoft Entra Objekt-IDs in Benutzerprinzipalnamen transformiert. Wenn false, werden die Werte als Microsoft Entra Objekt-IDs zurückgegeben. Der Standardwert ist false. Beachten Sie, dass Gruppen- und Anwendungsobjekt-IDs nicht übersetzt werden, da sie keine eindeutigen Anzeigenamen haben. |
Anforderungstext
Nichts.
Beispielanforderung
Eine Beispielanforderung finden Sie unter Auflisten von Blobressourcen .
Antwort
Die Antwort enthält einen HTTP-Statuscode, eine Reihe von Antwortheadern und einen Antworttext im XML-Format.
Statuscode
Ein erfolgreicher Vorgang gibt den Statuscode 200 (OK) zurück. Informationen zu Statuscodes finden Sie unter Status- und Fehlercodes.
Antwortheader
Die Antwort für diesen Vorgang enthält die folgenden Header. Die Antwort kann auch zusätzliche, standardmäßige HTTP-Header enthalten. Alle Standardheader entsprechen der HTTP/1.1-Protokollspezifikation.
| Antwortheader | Beschreibung |
|---|---|
Content-Type |
Gibt das Format an, in dem die Ergebnisse zurückgegeben werden. Derzeit ist dieser Wert application/xml. |
x-ms-request-id |
Dieser Header identifiziert die anforderung eindeutig und kann für die Problembehandlung der Anforderung verwendet werden. Weitere Informationen finden Sie unter Problembehandlung für API-Vorgänge. |
x-ms-version |
Gibt die Version von Blob Storage an, die zum Ausführen der Anforderung verwendet wird. Dieser Header wird für Anforderungen zurückgegeben, die mit Version 2009-09-19 und höher vorgenommen wurden. Dieser Header wird auch für anonyme Anforderungen ohne angegebene Version zurückgegeben, wenn der Container mit der 2009-09-19-Version von Blob Storage für den öffentlichen Zugriff gekennzeichnet wurde. |
Date |
Ein UTC-Datums-/Uhrzeitwert, der die Uhrzeit angibt, zu der die Antwort initiiert wurde. Der Dienst generiert diesen Wert. |
x-ms-client-request-id |
Sie können diesen Header verwenden, um Anfragen und entsprechende Antworten zu behandeln. Der Wert dieses Headers ist gleich dem Wert des x-ms-client-request-id-Headers, wenn er in der Anforderung vorhanden ist. Der Wert beträgt höchstens 1024 sichtbare ASCII-Zeichen. Wenn der x-ms-client-request-id-Header in der Anforderung nicht vorhanden ist, ist dieser Header in der Antwort nicht vorhanden. |
Antworttext
Das Format der XML-Antwort lautet wie folgt.
Beachten Sie, dass die PrefixElemente , Marker, MaxResultsund Delimiter nur vorhanden sind, wenn sie im Anforderungs-URI angegeben wurden. Wenn NextMarker leer ist, sind die Listenergebnisse vollständig. Wenn das NextMarker Feld nicht leer ist, können die Listenergebnisse vollständig sein. Wenn Sie alle Blobs auflisten möchten, fahren Sie mit dem Aufruf List Blobs mit nachfolgenden Markierungswerten fort, bis NextMarker leer ist.
Momentaufnahmen, Blobmetadaten und Blobs ohne Commit sind nur dann in der Antwort enthalten, wenn sie mit dem include Parameter im Anforderungs-URI angegeben werden.
In Version 2009-09-19 und höher sind die Eigenschaften des Blobs in einem Properties Element gekapselt.
Gibt ab Version 2009-09-19 List Blobs die folgenden umbenannten Elemente im Antworttext zurück:
Last-Modified(früherLastModified)Content-Length(früherSize)Content-Type(früherContentType)Content-Encoding(früherContentEncoding)Content-Language(früherContentLanguage)
Das Content-MD5 Element wird für Blobs angezeigt, die mit Version 2009-09-19 und höher erstellt wurden. In Version 2012-02-12 und höher berechnet Blob Storage den Content-MD5 Wert, wenn Sie ein Blob mithilfe von Put Blob hochladen. Blob Storage berechnet dies nicht, wenn Sie ein Blob mithilfe von Put Block List erstellen. Sie können den Content-MD5 Wert explizit festlegen, wenn Sie das Blob erstellen, oder indem Sie die Vorgänge Put Block List oder Set Blob Properties aufrufen.
Für Versionen ab 2009-09-19, aber vor Version 2015-02-21, können Sie keinen Container aufrufen List Blobs , der Anfügeblobs enthält. Der Dienst gibt den Statuscode 409 (Conflict) zurück, wenn das Ergebnis der Auflistung ein Anfüge-BLOB enthält.
LeaseState und LeaseDuration erscheinen nur in Version 2012-02-12 und höher.
CopyId, CopyStatus, CopySource, , CopyProgressund CopyCompletionTimeCopyStatusDescription werden nur in Version 2012-02-12 und höher angezeigt, wenn dieser Vorgang den include={copy} Parameter enthält. Diese Elemente werden nicht angezeigt, wenn dieses Blob noch nie das Ziel in einem Copy Blob Vorgang war. Die Elemente werden nicht angezeigt, wenn dieses Blob nach einem abgeschlossenen Copy Blob Vorgang mit Set Blob Properties, Put Bloboder Put Block Listgeändert wurde. Diese Elemente werden auch nicht in einem Blob angezeigt, das vor Version 2012-02-12 von Copy Blob erstellt wurde.
In Version 2013-08-15 und höher enthält das EnumerationResults Element ein ServiceEndpoint Attribut, das den Blobendpunkt angibt. Dieses Element enthält auch ein ContainerName Feld, das den Namen des Containers angibt. In früheren Versionen wurden diese beiden Attribute vor ContainerName Ort miteinander kombiniert. Auch in Version 2013-08-15 und höher wurde das Url Element under Blob entfernt.
Gibt für Version 2015-02-21 und höher List Blobs Blobs aller Typen (Block-, Seiten- und Anfügeblobs) zurück.
Gibt für Version 2015-12-11 und höher List Blobs das ServerEncrypted Element zurück. Dieses Element wird auf true festgelegt, wenn das Blob und die Anwendungsmetadaten vollständig verschlüsselt sind, und false andernfalls .
Gibt für Version 2016-05-31 und höher List Blobs das IncrementalCopy Element für inkrementelle Kopierblobs und Momentaufnahmen zurück, wobei der Wert auf festgelegt ist true.
Gibt für Version 2017-04-17 und höher das AccessTier Element zurück, List Blobs wenn explizit eine Zugriffsebene festgelegt wurde. Eine Liste der zulässigen Premium-Seitenblobebenen finden Sie unter Hochleistungsspeicher Premium und verwaltete Datenträger für VMs. Für Blob Storage- oder universelle v2-Konten sind gültige Werte , HotCoolund Archive. Wenn sich das Blob im Status "Aktivierung ausstehend" befindet, ArchiveStatus wird das Element mit einem der gültigen Werte (rehydrate-pending-to-hot, rehydrate-pending-to-cool" oder rehydrate-pending-to-cold) zurückgegeben. Ausführliche Informationen zum Blockblobtiering finden Sie unter Speicherebenen "Heiß", "Kalt" und "Archiv".
Gibt für Version 2017-04-17 und höher List Blobs das AccessTierInferred Element für Blob Storage- oder universelle v2-Konten zurück. Wenn für das Blockblob die Zugriffsebene nicht festgelegt ist, werden die Ebeneninformationen aus den Eigenschaften des Speicherkontos abgeleitet, und dieser Wert wird auf truefestgelegt. Dieser Header ist nur vorhanden, wenn die Ebene von der Kontoeigenschaft abgeleitet wird.
Gibt für Version 2017-04-17 und höher List Blobs das AccessTierChangeTime Element für Blob Storage- oder universelle v2-Konten zurück. Dies wird nur zurückgegeben, wenn die Leiste für block-BLOB jemals festgelegt wurde. Weitere Informationen finden Sie unter Darstellung von Datums-/Uhrzeitwerten in Kopfzeilen.
Für Version 2017-07-29 und höher wird , DeletedTimeund RemainingRetentionDays angezeigt, Deletedwenn dieser Vorgang den include={deleted} Parameter enthält. Diese Elemente werden nicht angezeigt, wenn dieses Blob nicht gelöscht wurde. Diese Elemente werden für Blobs oder Momentaufnahmen angezeigt, die mit dem DELETE Vorgang gelöscht werden, wenn das Feature für vorläufiges Löschen aktiviert wurde. Das Deleted Element wird für Blobs und Momentaufnahmen, die vorläufig gelöscht werden, auf true festgelegt.
Deleted-Time Entspricht dem Zeitpunkt, zu dem das Blob gelöscht wurde.
RemainingRetentionDays Gibt die Anzahl der Tage an, nach denen ein vorläufig gelöschtes Blob endgültig gelöscht wird.
Gibt für Version 2017-11-09 und höher den Zeitpunkt zurück, Creation-Time zu dem dieses Blob erstellt wurde.
Gibt für Version 2019-02-02 und höher das CustomerProvidedKeySha256 Element zurück, List Blobs wenn das Blob mit einem vom Kunden bereitgestellten Schlüssel verschlüsselt ist. Der Wert wird auf den SHA-256-Hash des Schlüssels festgelegt, der zum Verschlüsseln des Blobs verwendet wird. Wenn der Vorgang den include={metadata} Parameter enthält und Anwendungsmetadaten in einem Blob vorhanden sind, das mit einem vom Kunden bereitgestellten Schlüssel verschlüsselt ist, verfügt das Metadata Element über ein Encrypted="true" Attribut. Dieses Attribut gibt an, dass das Blob Metadaten enthält, die im Rahmen des List Blobs Vorgangs nicht entschlüsselt werden können. Um auf die Metadaten für diese Blobs zuzugreifen, rufen Sie Get Blob Properties oder Get Blob Metadata mit dem vom Kunden bereitgestellten Schlüssel auf.
Gibt für Version 2019-02-02 und höher das EncryptionScope Element zurück, List Blobs wenn das Blob mit einem Verschlüsselungsbereich verschlüsselt ist. Der Wert wird auf den Namen des Verschlüsselungsbereichs festgelegt, der zum Verschlüsseln des Blobs verwendet wird. Wenn der Vorgang den include={metadata} Parameter enthält, werden die Anwendungsmetadaten für das Blob transparent entschlüsselt und sind im Metadata Element verfügbar.
Gibt für Version 2019-12-12 und höher List Blobs das RehydratePriority Element für Blob Storage- oder universelle v2-Konten zurück, wenn sich das Objekt im rehydrate pending Status befindet. Gültige Werte sind High und Standard.
Gibt für Version 2019-12-12 und höher List Blobs das VersionId Element für Blobs und generierte Blobversionen zurück, wenn die Versionsverwaltung für das Konto aktiviert ist.
Gibt für Version 2019-12-12 und höher List Blobs das IsCurrentVersion Element für die aktuelle Version des Blobs zurück. Der Wert wird auf truegesetzt. Mit diesem Element können Sie die aktuelle Version von der schreibgeschützten, automatisch generierten Version unterscheiden.
Gibt für Version 2019-12-12 und höher List Blobs das TagCount Element für Blobs mit beliebigen Tags zurück. Das Tags Element wird nur angezeigt, wenn dieser Vorgang den include={tags} Parameter enthält. Diese Elemente werden nicht angezeigt, wenn im Blob keine Tags vorhanden sind.
Gibt für Version 2019-12-12 und höher List Blobs das Sealed Element für Anfügeblobs zurück. Das Sealed Element wird nur angezeigt, wenn das Anfügeblob versiegelt wurde. Diese Elemente werden nicht angezeigt, wenn das Anfüge-Blob nicht versiegelt ist.
Gibt für Version 2020-02-10 und höher List Blobs das LastAccessTime Element zurück. Das Element zeigt an, wann auf die Daten des BLOB zuletzt zugegriffen wurde, entsprechend der Richtlinie für die Nachverfolgung der letzten Zugriffszeit des Speicherkontos. Das Element wird nicht zurückgegeben, wenn das Speicherkonto nicht über diese Richtlinie verfügt oder die Richtlinie deaktiviert ist. Informationen zum Festlegen der Richtlinie für die Nachverfolgungszeit des letzten Zugriffs des Kontos finden Sie unter der Blob-Dienst-API. Das LastAccessTime Element verfolgt nicht nach, wann das letzte Mal auf die Metadaten des Blobs zugegriffen wird.
Gibt für Version 2020-06-12 und höher das ImmutabilityPolicyUntilDate and-Element ImmutabilityPolicyModeList Blobs zurück, wenn dieser Vorgang den include={immutabilitypolicy} Parameter enthält.
Gibt für Version 2020-06-12 und höher List Blobs das LegalHold Element zurück, wenn dieser Vorgang den include={legalhold} Parameter enthält.
Für Version 2020-06-12 und höher gibt für Konten mit aktiviertem List Blobs hierarchischem Namespace die OwnerElemente , Group, Permissionsund Acl zurück. Die Anforderung muss den include={permissions} Parameter enthalten. Beachten Sie, dass es sich bei dem Acl Element um eine kombinierte Liste von Zugriffs- und Standardzugriffssteuerungslisten handelt, die für die Datei oder das Verzeichnis festgelegt wurden.
Für Version 2020-06-12 und höher gibt für Konten mit aktiviertem hierarchischem Namespace List Blobs ein Trennzeichen das Properties Element im BlobPrefix Element zurück. Dies entspricht den Eigenschaften im Verzeichnis.
Gibt für Version 2020-08-04 und höher für Konten mit aktiviertem hierarchischem Namespace List Blobs das DeletionId Element für gelöschte Blobs zurück.
DeletionId ist ein 64-Bit-Bezeichner ohne Vorzeichen. Das Element identifiziert eindeutig einen vorläufig gelöschten Pfad, um ihn von anderen gelöschten Blobs mit demselben Pfad zu unterscheiden.
Gibt für Version 2020-10-02 und höher für Konten mit aktiviertem List Blobs hierarchischem Namespace das ResourceType Eigenschaftselement für den Pfad zurück. Dies kann entweder file oder sein directory.
Für Version 2021-02-12 und höher List Blobs werden alle BlobName oder BlobPrefixName Elementwerte prozentual codiert (gemäß RFC 2396). Dies gilt insbesondere für Werte, die Zeichen enthalten, die in XML (U+FFFE oder U+FFFF) nicht gültig sind. Wenn dies codiert ist, enthält das Name-Element ein Encoded=true-Attribut. Beachten Sie, dass dies nur für die Name Elementwerte gilt, die die in XML ungültigen Zeichen enthalten, nicht für die übrigen Name Elemente in der Antwort.
Gibt für Version 2021-06-08 und höher für Konten mit aktiviertem hierarchischem Namespace List Blobs das Placeholder properties-Element zurück. Dieses Element wird im BlobPrefix Element für Platzhalterverzeichnisse zurückgegeben, wenn gelöschte Blobs mit einem Trennzeichen aufgelistet werden. Diese Platzhalterverzeichnisse sind vorhanden, um die Navigation zu vorläufig gelöschten Blobs zu erleichtern.
Für Version 2021-06-08 und höher gibt für Konten mit aktiviertem List Blobs hierarchischem Namespace das EncryptionContext Element zurück. Wenn der Wert der Verschlüsselungskontexteigenschaft festgelegt wird, wird der festgelegte Wert zurückgegeben.
Gibt für Version 2020-02-10 und höher für Konten mit aktiviertem hierarchischem Namespace List Blobs das Expiry-Time Element für gelöschte Blobs zurück.
Expiry-Time ist der Zeitpunkt, zu dem die Datei abläuft und für die Datei zurückgegeben wird, wenn das Ablaufdatum auf dieselbe festgelegt ist.
<?xml version="1.0" encoding="utf-8"?>
<EnumerationResults ServiceEndpoint="http://myaccount.blob.core.windows.net/" ContainerName="mycontainer">
<Prefix>string-value</Prefix>
<Marker>string-value</Marker>
<MaxResults>int-value</MaxResults>
<Delimiter>string-value</Delimiter>
<Blobs>
<Blob>
<Name>blob-name</Name>
<Snapshot>date-time-value</Snapshot>
<VersionId>date-time-vlue</VersionId>
<IsCurrentVersion>true</IsCurrentVersion>
<Deleted>true</Deleted>
<Properties>
<Creation-Time>date-time-value</Creation-Time>
<Last-Modified>date-time-value</Last-Modified>
<Etag>etag</Etag>
<Owner>owner user id</Owner>
<Group>owning group id</Group>
<Permissions>permission string</Permissions>
<Acl>access control list</Acl>
<ResourceType>file | directory</ResourceType>
<Placeholder>true</Placeholder>
<Content-Length>size-in-bytes</Content-Length>
<Content-Type>blob-content-type</Content-Type>
<Content-Encoding />
<Content-Language />
<Content-MD5 />
<Cache-Control />
<x-ms-blob-sequence-number>sequence-number</x-ms-blob-sequence-number>
<BlobType>BlockBlob|PageBlob|AppendBlob</BlobType>
<AccessTier>tier</AccessTier>
<LeaseStatus>locked|unlocked</LeaseStatus>
<LeaseState>available | leased | expired | breaking | broken</LeaseState>
<LeaseDuration>infinite | fixed</LeaseDuration>
<CopyId>id</CopyId>
<CopyStatus>pending | success | aborted | failed </CopyStatus>
<CopySource>source url</CopySource>
<CopyProgress>bytes copied/bytes total</CopyProgress>
<CopyCompletionTime>datetime</CopyCompletionTime>
<CopyStatusDescription>error string</CopyStatusDescription>
<ServerEncrypted>true</ServerEncrypted>
<CustomerProvidedKeySha256>encryption-key-sha256</CustomerProvidedKeySha256>
<EncryptionContext>encryption-context</EncryptionContext>
<EncryptionScope>encryption-scope-name</EncryptionScope>
<IncrementalCopy>true</IncrementalCopy>
<AccessTierInferred>true</AccessTierInferred>
<AccessTierChangeTime>datetime</AccessTierChangeTime>
<DeletedTime>datetime</DeletedTime>
<RemainingRetentionDays>no-of-days</RemainingRetentionDays>
<TagCount>number of tags between 1 to 10</TagCount>
<RehydratePriority>rehydrate priority</RehydratePriority>
<Expiry-Time>date-time-value</Expiry-Time>
</Properties>
<Metadata>
<Name>value</Name>
</Metadata>
<Tags>
<TagSet>
<Tag>
<Key>TagName</Key>
<Value>TagValue</Value>
</Tag>
</TagSet>
</Tags>
<OrMetadata />
</Blob>
<BlobPrefix>
<Name>blob-prefix</Name>
</BlobPrefix>
</Blobs>
<NextMarker />
</EnumerationResults>
Beispielantwort
Eine Beispielantwort finden Sie unter Auflisten von Blobressourcen .
Ermächtigung
Die Autorisierung ist beim Aufrufen eines Datenzugriffsvorgangs in Azure Storage erforderlich. Sie können den List Blobs Vorgang wie unten beschrieben autorisieren.
Wichtig
Microsoft empfiehlt die Verwendung der Microsoft Entra-ID mit verwalteten Identitäten, um Anforderungen an Azure Storage zu autorisieren. Die Microsoft Entra-ID bietet eine bessere Sicherheit und Benutzerfreundlichkeit im Vergleich zur Shared Key-Autorisierung.
Azure Storage unterstützt die Verwendung der Microsoft Entra-ID zum Autorisieren von Anforderungen an BLOB-Daten. Mit Der Microsoft Entra-ID können Sie azure role-based access control (Azure RBAC) verwenden, um Berechtigungen für einen Sicherheitsprinzipal zu erteilen. Der Sicherheitsprinzipal kann ein Benutzer, eine Gruppe, ein Anwendungsdienstprinzipal oder eine von Azure verwaltete Identität sein. Der Sicherheitsprinzipal wird von der Microsoft Entra-ID authentifiziert, um ein OAuth 2.0-Token zurückzugeben. Das Token kann dann verwendet werden, um eine Anforderung für den Blob-Dienst zu autorisieren.
Weitere Informationen zur Autorisierung mithilfe der Microsoft Entra-ID finden Sie unter Autorisieren des Zugriffs auf Blobs mithilfe von Microsoft Entra ID.
Erlaubnisse
Nachfolgend sind die RBAC-Aktion aufgeführt, die für einen Microsoft Entra-Benutzer, eine Gruppe, eine verwaltete Identität oder einen Dienstprinzipal erforderlich ist, um den List Blobs Vorgang aufzurufen, und die integrierte Azure RBAC-Rolle, die diese Aktion enthält:
- Azure RBAC-Aktion:Microsoft.Storage/storageAccounts/blobServices/containers/blobs/read
- Integrierte Rolle mit den geringsten Berechtigungen:Storage-Blobdatenleser
Wenn Sie include=tagsangeben :
- Azure RBAC-Aktion:Microsoft.Storage/storageAccounts/blobServices/containers/blobs/tags/read
- Rolle mit den geringsten Rechten:Storage Blob Data Owner
Weitere Informationen zum Zuweisen von Rollen mithilfe von Azure RBAC finden Sie unter Zuweisen einer Azure-Rolle für den Zugriff auf BLOB-Daten.
Bemerkungen
Blob-Eigenschaften in der Antwort
Wenn Sie angefordert haben, dass nicht freigegebene Blobs in die Enumeration einbezogen werden, beachten Sie, dass einige Eigenschaften erst festgelegt werden, wenn das Blob zugesichert wurde. Einige Eigenschaften werden in der Antwort möglicherweise nicht zurückgegeben.
Das x-ms-blob-sequence-number Element wird nur für Seitenblobs zurückgegeben.
Das OrMetadata Element wird nur für Blockblobs zurückgegeben.
Bei Seitenblobs entspricht der im Element zurückgegebene Content-Length Wert dem Wert des Headers des Blobs x-ms-blob-content-length .
Das Content-MD5 Element wird nur dann im Antworttext angezeigt, wenn es mit Version 2009-09-19 oder höher für das Blob festgelegt wurde. Sie können die Content-MD5 Eigenschaft festlegen, wenn das Blob erstellt wird, oder indem Sie Set Blob Properties aufrufen. In Version 2012-02-12 und höher Put Blob wird der MD5-Wert eines Blockblobs festgelegt, auch wenn die Put Blob Anforderung keinen MD5-Header enthält.
Metadaten in der Antwort
Das Metadata Element ist nur vorhanden, wenn der include=metadata Parameter im URI angegeben wurde. Innerhalb des Metadata Elements wird der Wert jedes Name-Wert-Paares in einem Element aufgeführt, das dem Namen des Paares entspricht.
Beachten Sie, dass mit diesem Parameter angeforderte Metadaten gemäß den Benennungseinschränkungen gespeichert werden müssen, die von der 2009-09-19-Version von Blob Storage auferlegt werden. Ab dieser Version müssen alle Metadatennamen den Benennungskonventionen für C#-Bezeichner entsprechen.
Wenn ein Name-Wert-Paar aus Metadaten gegen diese Benennungseinschränkungen verstößt, gibt der Antworttext den problematischen Namen innerhalb eines x-ms-invalid-name Elements an. Das folgende XML-Fragment zeigt Folgendes:
…
<Metadata>
<MyMetadata1>first value</MyMetadata1>
<MyMetadata2>second value</MyMetadata2>
<x-ms-invalid-name>invalid-metadata-name</x-ms-invalid-name>
</Metadata>
…
Tags in der Antwort
Das Tags Element ist nur vorhanden, wenn der include=tags Parameter für den URI angegeben wurde und das Blob Tags enthält. Innerhalb des TagSet Elements werden bis zu 10 Tag Elemente zurückgegeben, die jeweils das key und value der benutzerdefinierten Blobindextags enthalten. Die Sortierung von Tags wird in der Antwort nicht garantiert.
Die Tags and-Elemente TagCount werden nicht zurückgegeben, wenn das Blob keine Tags enthält.
Der Speicherdienst behält eine starke Konsistenz zwischen einem Blob und seinen Tags bei, der sekundäre Index ist jedoch letztendlich konsistent. Tags können in einer Antwort auf sichtbar sein, List Blobs bevor sie für Find Blobs by Tags Vorgänge sichtbar sind.
Momentaufnahmen in der Antwort
Momentaufnahmen werden nur dann in der Antwort aufgeführt, wenn der include=snapshots Parameter im URI angegeben wurde. Momentaufnahmen, die in der Antwort aufgeführt sind, enthalten das LeaseStatus Element nicht, da Momentaufnahmen keine aktiven Leases haben können.
Mit der Dienstversion 2021-06-08 und höher können Sie mit einem Trennzeichen aufrufen List Blobs und Momentaufnahmen in die Enumeration einbeziehen. Für Dienstversionen vor 2021-06-08 gibt eine Anforderung, die beide enthält, einen InvalidQueryParameter-Fehler zurück (HTTP-Statuscode 400 – Ungültige Anforderung).
Nicht ausgelassene Blobs in der Antwort
Nicht ausgeführte Blobs werden nur dann in der Antwort aufgeführt, wenn der include=uncommittedblobs Parameter im URI angegeben wurde. Nicht ausgelassene Blobs, die in der Antwort aufgeführt sind, enthalten keines der folgenden Elemente:
Last-ModifiedEtagContent-TypeContent-EncodingContent-LanguageContent-MD5Cache-ControlMetadata
Gelöschte Blobs in der Antwort
Gelöschte Blobs werden nur dann in der Antwort aufgeführt, wenn der include=deleted Parameter im URI angegeben wurde. Gelöschte Blobs, die in der Antwort aufgeführt sind, enthalten keine Lease-Elemente , da gelöschte Blobs keine aktiven Leases haben können.
Gelöschte Snapshots werden in die Listenantwort aufgenommen, wenn include=deleted,snapshot sie im URI angegeben wurde.
Objektreplikationsmetadaten in der Antwort
Das OrMetadata Element ist vorhanden, wenn eine Objektreplikationsrichtlinie für ein Blob ausgewertet wurde und der List Blobs Aufruf mit Version 2019-12-12 oder höher erfolgte. Innerhalb des OrMetadata Elements wird der Wert jedes Name-Wert-Paares in einem Element aufgeführt, das dem Namen des Paares entspricht. Das Format des Namens ist or-{policy-id}_{rule-id}, wobei {policy-id} eine GUID ist, die den Bezeichner der Objektreplikationsrichtlinie für das Speicherkonto darstellt.
{rule-id} ist eine GUID, die den Regelbezeichner für den Speichercontainer darstellt. Gültige Werte sind complete und failed.
…
<OrMetadata>
<or-e524bba7-4323-4b93-91f8-d09d5d0b7057_d86c51de-ef02-4264-bdcf-dcd389a6c7ac>complete</or-e524bba7-4323-4b93-91f8-d09d5d0b7057_d86c51de-ef02-4264-bdcf-dcd389a6c7ac>
<or-2b302b5d-fcd5-44d6-a5ed-455bf27e17ea_4a398ff5-2a89-4090-879b-10248f23428e>failed</or-2b302b5d-fcd5-44d6-a5ed-455bf27e17ea_4a398ff5-2a89-4090-879b-10248f23428e>
</OrMetadata>
…
Unveränderlichkeitsrichtlinie in der Antwort
Die ImmutabilityPolicyUntilDate and-Elemente ImmutabilityPolicyMode sind nur vorhanden, wenn der include=immutabilitypolicy Parameter im URI angegeben wurde.
<Properties>
<ImmutabilityPolicyUntilDate>date-time-value</ImmutabilityPolicyUntilDate>
<ImmutabilityPolicyMode>unlocked | locked </ImmutabilityPolicyMode>
</Properties>
Rechtliche Aufbewahrung in der Antwort
Das LegalHold Element ist nur vorhanden, wenn der include=legalhold Parameter im URI angegeben wurde.
<Properties>
<LegalHold>true | false </LegalHold>
</Properties>
Zurückgeben von Resultsets mithilfe eines Markerwerts
Wenn Sie einen Wert für den maxresults Parameter angeben und die Anzahl der zurückzugebenden Blobs diesen Wert oder den Standardwert für maxresultsüberschreitet, enthält der Antworttext ein NextMarker Element. Dieses Element gibt das nächste BLOB an, das für eine nachfolgende Anforderung zurückgegeben werden soll. In bestimmten Fällen gibt der Dienst das NextMarker Element zurück, obwohl die Anzahl der zurückgegebenen Ergebnisse kleiner als der Wert von maxresultsist.
Um die nächste Gruppe von Elementen zurückzugeben, geben Sie den Wert von NextMarker als Markierungsparameter im URI für die nachfolgende Anforderung an. Beachten Sie, dass der Wert von NextMarker als undurchsichtig behandelt werden sollte.
Verwenden eines Trennzeichens zum Durchlaufen des Blob-Namespace
Der delimiter Parameter ermöglicht es dem Aufrufer, den Blobnamespace mithilfe eines vom Benutzer konfigurierten Trennzeichens zu durchlaufen. Auf diese Weise können Sie eine virtuelle Hierarchie von Blobs durchlaufen, als wäre es ein Dateisystem. Das Trennzeichen kann ein einzelnes Zeichen oder eine Zeichenfolge sein.
Wenn die Anforderung diesen Parameter enthält, gibt der Vorgang ein BlobPrefix Element zurück. Das BlobPrefix Element wird anstelle aller Blobs mit Namen zurückgegeben, die mit derselben Teilzeichenfolge beginnen, bis zum Auftreten des Trennzeichens. Der Wert des BlobPrefix Elements ist substring+delimiter, wobei substring die gemeinsame Teilzeichenfolge ist, mit der ein oder mehrere Blobnamen beginnen, und delimiter der Wert des delimiter Parameters ist.
Sie können den Wert von BlobPrefix verwenden, um einen nachfolgenden Aufruf durchzuführen, um die Blobs aufzulisten, die mit diesem Präfix beginnen. Geben Sie dazu den Wert of BlobPrefix für den prefix Parameter im Anforderungs-URI an.
Beachten Sie, dass jedes zurückgegebene BlobPrefix-Element genauso wie jedes Blob-Element zu dem maximalen Ergebnis zählt.
Blobs werden im Antworttext in alphabetischer Reihenfolge mit großgeschriebenen Buchstaben aufgelistet. Beachten Sie, dass für Konten mit aktiviertem hierarchischem Namespace / die niedrigste Sortierreihenfolge verwendet wird. Dieser Unterschied im Verhalten gilt nur für das rekursive Auflisten.
Kopieren von Fehlern in der Beschreibung des Kopierstatus
CopyStatusDescription Enthält weitere Informationen zum Copy Blob Fehler.
Wenn ein Kopierversuch fehlschlägt, ist auf
pendingfestgelegt,CopyStatuswenn Blob Storage den Vorgang noch wiederholt. DerCopyStatusDescriptionText beschreibt den Fehler, der beim letzten Kopierversuch aufgetreten sein könnte.Wenn
CopyStatusauffailedfestgelegt ist, beschreibt derCopyStatusDescriptionText den Fehler, der dazu geführt hat, dass der Kopiervorgang fehlgeschlagen ist.
In der folgenden Tabelle werden die Felder der einzelnen CopyStatusDescription Werte beschrieben.
| Bestandteil | Beschreibung |
|---|---|
| HTTP-Statuscode | Standardmäßige dreistellige ganzzahlige Zahl, die den Fehler angibt. |
| Fehlercode | Schlüsselwort, das den Fehler beschreibt. Er wird von Azure im <ErrorCode-Element> bereitgestellt. Wenn kein <ErrorCode-Element> angezeigt wird, gibt der Dienst ein Schlüsselwort zurück, das den Standardfehlertext enthält, der dem dreistelligen HTTP-Statuscode in der HTTP-Spezifikation zugeordnet ist. Weitere Informationen finden Sie unter Bekannte REST API-Fehlercodes. |
| Informationen | Detaillierte Beschreibung des Fehlers in Anführungszeichen. |
In der folgenden Tabelle werden die CopyStatusCopyStatusDescription Werte gängiger Fehlerszenarien beschrieben.
Wichtig
Der hier gezeigte Beschreibungstext kann ohne Warnung auch ohne Versionsänderung geändert werden. Verlassen Sie sich nicht darauf, diesen exakten Text zuzuordnen.
| Szenario | Kopierstatuswert | Statusbeschreibungswert kopieren |
|---|---|---|
| Der Kopiervorgang wurde erfolgreich abgeschlossen. | Erfolg | leer |
| Der Benutzer hat den Kopiervorgang abgebrochen, bevor er abgeschlossen wurde. | abgebrochen | leer |
| Fehler beim Lesen aus dem Quell-BLOB während eines Kopiervorgangs. Der Vorgang wird wiederholt. | anhängig | 502 BadGateway "Beim Lesen der Quelle ist ein erneuter Fehler aufgetreten. Versuchen Sie es erneut. Zeitpunkt des Versagens: <Zeit>" |
| Fehler beim Schreiben in das Ziel-BLOB eines Kopiervorgangs. Der Vorgang wird wiederholt. | anhängig | 500 InternalServerError "Es ist ein erneuter Fehler aufgetreten. Versuchen Sie es erneut. Zeitpunkt des Versagens: <Zeit>" |
| Beim Lesen aus dem Quell-BLOB eines Kopiervorgangs ist ein nicht wiederherstellbarer Fehler aufgetreten. | misslungen | 404 ResourceNotFound, "Kopieren beim Lesen des Quellcodes fehlgeschlagen." Wenn der Dienst diesen zugrunde liegenden Fehler meldet, wird er <im ErrorCode-Element> zurückgegebenResourceNotFound. Wenn kein <ErrorCode-Element> in der Antwort angezeigt wurde, wird eine standardmäßige Zeichenfolgendarstellung des HTTP-Status angezeigt, z. B NotFound. . . |
| Der Timeoutzeitraum, der alle verstrichenen Kopiervorgänge begrenzt. (Derzeit beträgt der Timeoutzeitraum zwei Wochen.) | misslungen | 500 OperationCancelled "Die Kopie hat die maximal zulässige Zeit überschritten." |
| Der Kopiervorgang ist beim Lesen aus der Quelle zu häufig fehlgeschlagen und hat kein Mindestverhältnis von Versuchen zu Erfolgen erfüllt. (Dieses Timeout verhindert, dass eine sehr schlechte Quelle mehr als zwei Wochen vor dem Fehlschlagen versucht wird). | misslungen | 500 OperationCancelled "Fehler beim Lesen der Quelle." |
Abrechnung
Preisanforderungen können von Clients stammen, die Blob Storage-APIs verwenden, entweder direkt über die BLOB Storage-REST-API oder aus einer Azure Storage-Clientbibliothek. Diese Anforderungen anfallen Gebühren pro Transaktion. Der Transaktionstyp wirkt sich auf die Belastung des Kontos aus. Lesen Sie z. B. Transaktionen, die einer anderen Abrechnungskategorie als dem Schreiben von Transaktionen zugerechnet werden. Die folgende Tabelle zeigt die Abrechnungskategorie für List Blobs Anforderungen basierend auf dem Speicherkontotyp:
| Vorgang | Speicherkontotyp | Abrechnungskategorie |
|---|---|---|
| Blobs auflisten | Premium-Block-BLOB Standard „Allgemein v2“ Standard „Allgemein v1“ |
Listen- und Erstellen von Containervorgängen |
Informationen zu den Preisen für die angegebene Abrechnungskategorie finden Sie unter Azure Blob Storage Pricing.