Ein Nutzer ist Eigentümer eines Ordners in „Meine Ablage“. Der Ordner enthält möglicherweise mehrere Nutzer mit Zugriff auf verschiedene Dateien. Dieses restriktive Zugriffsmodell bedeutet, dass verschiedene Nutzer möglicherweise unterschiedliche Listen von Elementen im selben Ordner sehen. Ein Nutzer mit Zugriff auf den übergeordneten Ordner „Meine Ablage“, aber nicht auf ein Element in diesem Ordner, hat „eingeschränkten Zugriff“. Dadurch ist es schwierig, herauszufinden, wer innerhalb der Hierarchie Zugriff hat.
Dateien in geteilten Ablagen gehören der geteilten Ablage. Geteilte Ablagen haben ein umfassendes Modell, sodass jeder Nutzer dieselbe Liste mit Elementen im selben Ordner hat.
Mit der Einführung von Ordnern mit eingeschränktem Zugriff wird das umfassende Zugriffsmodell von geteilten Ablagen auf „Meine Ablage“ übertragen. Mit dieser Änderung sind Ordner mit eingeschränktem Zugriff die einzige Ausnahme, bei der der Zugriff auf einen bestimmten Unterordner sowohl in „Meine Ablage“ als auch in geteilten Ablagen eingeschränkt werden kann.
In dieser Anleitung wird beschrieben, wie Sie Ordner mit eingeschränktem und umfassendem Zugriff in Google Drive verwalten können.
Ordner mit eingeschränktem Zugriff
Mit Ordnern mit eingeschränktem Zugriff können Sie den Zugriff auf Ordner auf bestimmte Nutzer beschränken. Nur Nutzer, die Sie direkt zu den Berechtigungen des Ordners hinzufügen, können ihn öffnen und auf seine Inhalte zugreifen. Nutzer mit übernommenem Zugriff auf den freigegebenen Ordner in „Meine Ablage“ oder den freigegebenen Ordner in der geteilten Ablage (über den Zugriff auf einen übergeordneten Ordner) können den eingeschränkten Ordner in Drive sehen, aber nicht öffnen. Mit dieser Funktion wird das Freigabeverhalten von Elementen in „Meine Ablage“ und in geteilten Ablagen besser aufeinander abgestimmt. So können Sie Ordner mit vertraulichen Inhalten neben Inhalten organisieren, die für einen größeren Kreis freigegeben sind.
Ordner mit eingeschränktem Zugriff sind sowohl in „Meine Ablage“ als auch in geteilten Ablagen verfügbar. Nutzer mit der Rolle owner
in „Meine Ablage“ und der Rolle organizer
in geteilten Ablagen können immer auf Ordner mit eingeschränktem Zugriff zugreifen. Zum Ändern der Liste der Ordnernutzer sind keine speziellen Berechtigungen erforderlich. Rollen, die Ordner freigeben können, können die Mitgliederlisten aktualisieren. Weitere Informationen zu Rollen und Berechtigungen finden Sie unter Rollen und Berechtigungen und Übersicht über freigegebene Ablagen.
Ordner sind zwar eine Art von Datei, aber eingeschränkter Zugriff ist für Dateien nicht verfügbar.
Eingeschränkten Zugriff auf einen Ordner festlegen
Nutzer mit direkten Ordnerberechtigungen können auf einen Ordner mit eingeschränktem Zugriff zugreifen. Nur die Rolle owner
in „Meine Ablage“ und die Rolle organizer
in geteilten Ablagen können den eingeschränkten Zugriff aktivieren oder deaktivieren.
Wenn ein Nutzer mit der Rolle writer
in „Meine Ablage“ das boolesche Feld writersCanShare
für die Ressource files
auf true
gesetzt hat, kann er die Funktion auch aktivieren oder deaktivieren.
Wenn Sie den Zugriff auf einen Ordner einschränken möchten, legen Sie das boolesche Feld inheritedPermissionsDisabled
der Ressource files
auf true
fest. Wenn true
, können nur Nutzer mit der Rolle owner
oder organizer
sowie Nutzer mit direkten Ordnerberechtigungen darauf zugreifen.
Wenn Sie die übernommenen Berechtigungen wieder aktivieren möchten, legen Sie für inheritedPermissionsDisabled
den Wert false
fest.
Berechtigung zum Einschränken des Zugriffs auf einen Ordner bestätigen
Wenn Sie prüfen möchten, ob Sie den Zugriff auf einen Ordner einschränken können, sehen Sie sich die booleschen Werte der Felder capabilities.canDisableInheritedPermissions
und capabilities.canEnableInheritedPermissions
in der Ressource files
an. Mit diesen Einstellungen wird bestätigt, ob Sie die Berechtigung haben, den Zugriff auf einen Ordner über das Feld inheritedPermissionsDisabled
einzuschränken.
Weitere Informationen zu capabilities
finden Sie unter Dateifunktionen.
Untergeordnete Elemente eines Ordners mit eingeschränktem Zugriff auflisten
Mit dem booleschen Feld capabilities.canListChildren
können Sie prüfen, ob Sie die untergeordneten Elemente eines Ordners auflisten können.
Der zurückgegebene Wert ist immer false
, wenn das Element kein Ordner ist oder wenn der Zugriff des Anfragenden auf den Inhalt des Ordners durch Festlegen von inheritedPermissionsDisabled
auf false
entfernt wurde.
Wenn Ihr Zugriff auf die Inhalte des Ordners entfernt wurde, können Sie mit den Methoden files.get()
und files.list()
weiterhin auf die Metadaten des Ordners zugreifen. Wenn Sie bestätigen möchten, dass der Zugriff eingeschränkt ist, prüfen Sie im Antworttext, ob das Element ein Ordner mit dem MIME-Typ application/vnd.google-apps.folder
ist und das Feld capabilities.canListChildren
auf „false“ gesetzt ist. Wenn Sie versuchen, die untergeordneten Elemente eines solchen Ordners aufzulisten, ist das Ergebnis immer leer.
Auf Metadaten von Ordnern mit eingeschränktem Zugriff zugreifen
In Ordnern mit eingeschränktem Zugriff können Sie Metadaten des Ordners ansehen, auch wenn Sie keinen Zugriff auf den Inhalt des Ordners haben.
Wenn Sie die Ressource permissions
verwenden, um den Zugriff eines Nutzers zu ermitteln, enthalten sowohl „Meine Ablage“- als auch geteilte Ablageordner, die nur Zugriff auf die Metadaten gewähren, die folgenden Werte im Antworttext: inheritedPermissionsDisabled=true
und view=metadata
. Die Rolle ist immer auf reader
festgelegt. Das Feld view
wird nur für Berechtigungen ausgefüllt, die zu einem view
gehören. Weitere Informationen finden Sie unter Ansichten.
Für alle Einträge im Feld permissionDetails
ist das Feld inherited
auf true
gesetzt. Das bedeutet, dass die Berechtigung übernommen wird und kein direkter Zugriff auf den Inhalt des Ordners gewährt wurde.
Wenn Sie Zugriff auf den Ordnerinhalt und die Metadaten gewähren möchten, legen Sie das Feld inheritedPermissionsDisabled
auf false
fest oder aktualisieren Sie die Rolle auf reader
oder höher.
Wenn eine Berechtigung zuerst eingeschränkt wurde, indem die Übernahme für einen Ordner (inheritedPermissionsDisabled=true
) deaktiviert wurde, und die Berechtigung dann direkt dem Ordner hinzugefügt wurde, werden die Werte im Antworttext zu inheritedPermissionsDisabled=true
, wobei das Feld view
nicht festgelegt ist. Wenn sich der Ordner in einer geteilten Ablage befindet, enthält die Liste permissionDetails
einen Eintrag, in dem das Feld inherited
auf false
gesetzt ist. Das bedeutet, dass die Berechtigung nicht übernommen wird. Diese Berechtigung gewährt Zugriff auf Ordnerinhalte und Metadaten wie jede andere Berechtigung.
Ordner mit eingeschränktem Zugriff löschen
Sie können Ordner mit eingeschränktem Zugriff mit der Methode files.delete()
für die Ressource files
löschen.
In „Meine Ablage“ kann eine Ordnerhierarchie nur vom Eigentümer des Elements gelöscht werden. Wenn ein Nutzer eine Hierarchie mit Ordnern löscht, für die der Zugriff eingeschränkt ist und die anderen Nutzern gehören, werden diese Ordner in den Ordner „Meine Ablage“ des Eigentümers verschoben.
Wenn der Nutzer die Rolle owner
hat, wird die gesamte Hierarchie gelöscht.
In geteilten Ablagen kann die Rolle organizer
Hierarchien löschen, auch wenn sie Ordner mit eingeschränktem Zugriff enthalten. Wenn mit der Rolle fileOrganizer
eine Hierarchie gelöscht wird, die Ordner mit eingeschränktem Zugriff enthält, hängt das Ergebnis davon ab, ob sie den Ordnern mit eingeschränktem Zugriff wieder als fileOrganizer
hinzugefügt wurden. Wenn ja, wird die gesamte Hierarchie gelöscht. Andernfalls werden die Ordner mit eingeschränktem Zugriff in den Stammordner der geteilten Ablage verschoben.
Erweiterter Zugriff
Durch die Einführung von Ordnern mit eingeschränktem Zugriff wird das umfassende Zugriffsmodell von geteilten Ablagen auf „Meine Ablage“ ausgeweitet. Nach der Einführung des Zugriffsmodells bedeutet der Zugriff auf einen Ordner mindestens die gleiche Zugriffsebene für alle Elemente in dieser Ordnerhierarchie. Ordner mit eingeschränktem Zugriff sind die einzige Ausnahme, bei der der Zugriff auf einen bestimmten Unterordner sowohl in „Meine Ablage“ als auch in geteilten Ablagen eingeschränkt werden kann. Das bedeutet auch, dass Sie den Zugriff, der vom übergeordneten Ordner übernommen wurde, nicht mehr entfernen können, es sei denn, der Zugriff auf Ihren Ordner ist eingeschränkt. In diesem Fall gibt die Drive API eine Fehlerantwort zurück. Wenn Sie eine detailliertere Zugriffssteuerung innerhalb einer Hierarchie definieren möchten, können Sie eingeschränkten Zugriff für den Ordner festlegen.
An erweiterten Zugriff anpassen
Um Entwicklern die Anpassung an den erweiterten Zugriff zu erleichtern, wurden mehrere Verbesserungen an der Google Drive API vorgenommen:
Das Feld
permissionDetails[]
in der Ressourcepermissions
wird jetzt für Elemente in „Meine Ablage“ ausgefüllt. Bisher waren die Felder entweder nicht festgelegt oder wurden gegebenenfalls aus dem FeldteamDrivePermissionDetails
repliziert. Nur die FelderpermissionType
undinherited
in „Meine Ablage“ werden ausgefüllt.Das Feld
permissionDetails[].inherited
gibt an, ob eine Berechtigung vom übergeordneten Element des Elements übernommen wurde. So können Sie erkennen, ob bestimmte Rollen (z. B.reader
) vom übergeordneten Element übernommen werden und ob für das Element direkt eine höhere Rolle (z. B.writer
) gewährt wird.Wenn Sie die Berechtigungen für ein Element aufrufen, kann das Feld
permissionDetails[]
mehrere Einträge enthalten. Falls vorhanden, gibt es einen Eintrag für die Berechtigung direkt für das Element für diesen Bereich und dann Einträge für die geerbten oder Mitgliedsberechtigungen für das Element.Entwickler können das API-Verhalten für den erweiterten Zugriff in „Mein Drive“ vor einer zukünftigen obligatorischen Durchsetzung aktivieren. Sie können den Anfrageparameter
enforceExpansiveAccess
auftrue
festlegen, damit sich zukünftige Änderungen am erweiterten Zugriff nicht auf Ihre App auswirken.Wenn Sie sich jetzt anmelden, funktioniert die API für Elemente in „Meine Ablage“ genauso wie für Elemente in geteilten Ablagen. Wenn Sie beispielsweise versuchen, den Zugriff unterhalb der geerbten Rolle einzuschränken, schlägt der Aufruf von
permissions.update()
fehl. Ebenso schlägt ein Aufruf vonpermissions.delete()
fehl, wenn die Berechtigung übernommen wird.
Eingeschränkten Zugriff erkennen und verhindern
Ihre App erstellt möglicherweise eingeschränkten Zugriff (bei dem ein Nutzer Zugriff auf den übergeordneten Ordner „Meine Ablage“, aber nicht auf eine Datei in diesem Ordner hat) auf Ihre Ordner in „Meine Ablage“, wenn Sie die Methoden permissions.update()
oder permissions.delete()
verwenden.
Wenn Sie diese Methoden verwenden, können Sie die Felder in der permissions
-Ressource prüfen, um zu sehen, wo eine Anfrage eingeschränkten Zugriff erstellen könnte, und solche Anfragen vermeiden. Verwenden Sie das Feld enforceExpansiveAccess
in Ihrer Anfrage, um diese Situation zu erkennen.
Wenn Ihre App bereits eingeschränkten Zugriff auf Ihre Ordner erstellt hat, können Sie folgendermaßen vorgehen:
Durchlaufen Sie die Ordnerhierarchie, um den eingeschränkten Zugriff zu entfernen. Stattdessen sollten Sie den Ordnerzugriff einschränken.
Wenn es sich bei dem Element, dessen Freigabe Sie aufheben möchten, um eine Datei handelt, können Sie einen Zwischenordner erstellen, den Zugriff darauf einschränken und die Datei in den neuen Ordner verschieben.
Wenn Sie keine Ordner mit eingeschränktem Zugriff verwenden möchten, aber den Zugriff auf eine Datei entfernen müssen, können Sie die Datei in einen privaten Ordner verschieben, z. B. in den Stammordner „Meine Ablage“. Anschließend können Sie eine Verknüpfung zum ursprünglichen Speicherort des Elements erstellen, damit Nutzer es weiterhin verwenden können.
Weitere Informationen
- Dateien, Ordner und Laufwerke freigeben
- So funktioniert der Dateizugriff in geteilten Ablagen
- Weitere Informationen zu Ordnern mit eingeschränktem Zugriff