Z tego przewodnika dowiesz się, jak zarządzać dyskami współdzielonymi, m.in. jak je tworzyć oraz zarządzać użytkownikami i uprawnieniami za pomocą interfejsu Google Drive API.
Jeśli chcesz określić pola, które mają być zwracane w odpowiedzi, możesz ustawić parametr
fields systemowy
w dowolnej metodzie zasobu drives. Jeśli nie określisz parametru fields, serwer zwróci domyślny zestaw pól właściwy dla danej metody. Na przykład metoda
list zwraca tylko pola kind, id,
i name dla każdego dysku współdzielonego. Więcej informacji znajdziesz w artykule Zwracanie
określonych pól.
Więcej informacji o limitach folderów na dyskach współdzielonych znajdziesz w artykule Limity folderów na dyskach współdzielonych.
Tworzenie dysku współdzielonego
Aby utworzyć dysk współdzielony, użyj create
metody w zasobie drives z
requestId parametrem.
Parametr requestId identyfikuje logiczną próbę idempotentnego utworzenia dysku współdzielonego. Jeśli żądanie przekroczy limit czasu lub zwróci nieokreślony błąd backendu, można je powtórzyć bez obawy o utworzenie duplikatów. Parametr requestId i treść żądania muszą pozostać takie same.
Poniższy przykład kodu pokazuje, jak utworzyć dysk współdzielony:
Java
Python
Node.js
PHP
.NET
Wywołania metody create są
idempotentne.
Jeśli dysk współdzielony został utworzony w poprzednim żądaniu lub w wyniku ponowienia, metoda zwraca instancję zasobu drives. Czasami, np. po dłuższym czasie lub jeśli zmieniła się treść żądania, może zostać zwrócony błąd 409 wskazujący, że należy odrzucić parametr requestId.
Pobieranie dysku współdzielonego
Aby pobrać metadane dysku współdzielonego, użyj metody
get w zasobie drives z parametrem ścieżki driveId. Jeśli nie
znasz identyfikatora dysku, możesz wyświetlić listę wszystkich dysków współdzielonych
za pomocą metody list.
Metoda get zwraca dysk współdzielony jako instancję zasobu drives.
Aby wysłać żądanie jako administrator domeny, ustaw parametr zapytania useDomainAdminAccess na true. Więcej informacji znajdziesz w artykule Zarządzanie dyskami współdzielonymi jako
administrator domeny.
Wyświetlanie listy dysków współdzielonych
Aby wyświetlić listę dysków współdzielonych użytkownika, użyj list
metody w zasobie drives. Metoda zwraca listę dysków współdzielonych.
Aby dostosować paginację lub filtrować dyski współdzielone, przekaż te parametry zapytania:
pageSize: maksymalna liczba dysków współdzielonych, które mają być zwracane na stronie.pageToken: token strony otrzymany z poprzedniego wywołania listy. Podaj ten token, aby pobrać następną stronę.q: ciąg zapytania do wyszukiwania dysków współdzielonych. Więcej informacji znajdziesz w artykule Wyszukiwanie dysków współdzielonych.useDomainAdminAccess: ustaw natrue, aby wysłać żądanie jako administrator domeny i zwrócić wszystkie dyski współdzielone w domenie, w której wysyłający jest administratorem. Więcej informacji znajdziesz w artykule Zarządzanie dyskami współdzielonymi jako administrator domeny.
Aktualizowanie dysku współdzielonego
Aby zaktualizować metadane dysku współdzielonego, użyj metody update w zasobie
drives z parametrem ścieżki driveIdparameter.
Metoda zwraca dysk współdzielony jako instancję zasobu drives.
Aby wysłać żądanie jako administrator domeny, ustaw parametr zapytania useDomainAdminAccess na true. Więcej informacji znajdziesz w artykule Zarządzanie dyskami współdzielonymi jako
administrator domeny.
Ukrywanie i odkrywanie dysku współdzielonego
Aby ukryć dysk współdzielony w widoku domyślnym, użyj metody hide w zasobie
drives z parametrem driveId.
Gdy dysk współdzielony jest ukryty, Dysk oznacza zasób dysku współdzielonego jako hidden=true. Ukryte dyski współdzielone nie są widoczne w interfejsie Dysku ani na liście zwracanych plików.
Aby przywrócić dysk współdzielony do widoku domyślnego, użyj metody unhide w zasobie
drives z parametrem driveId.
Obie metody zwracają dysk współdzielony jako instancję zasobu drives.
Usuwanie dysku współdzielonego
Aby trwale usunąć dysk współdzielony, użyj metody
delete w zasobie drives z parametrem driveId.
Zanim usuniesz dysk współdzielony, cała jego zawartość musi zostać przeniesiona do kosza lub usunięta. Użytkownik musi też mieć role=organizer w folderze dysku współdzielonego. Więcej informacji znajdziesz w artykule Przenoszenie plików i folderów do kosza oraz ich usuwanie.
Aby filtrować dyski współdzielone, przekaż te parametry zapytania:
useDomainAdminAccess: ustaw natrue, aby wysłać żądanie jako administrator domeny i zwrócić wszystkie dyski współdzielone w domenie, w której wysyłający jest administratorem. Więcej informacji znajdziesz w artykule Zarządzanie dyskami współdzielonymi jako administrator domeny.allowItemDeletion: ustaw natrue, aby usunąć elementy z dysku współdzielonego. Ta opcja jest obsługiwana tylko wtedy, gdy parametruseDomainAdminAccessjest ustawiony natrue.
Dodawanie i usuwanie użytkowników dysku współdzielonego
Dodawaj i usuwaj użytkowników dysku współdzielonego za pomocą zasobu
permissions.
Aby dodać użytkownika, utwórz uprawnienie na dysku współdzielonym. Metody uprawnień można też stosować do poszczególnych plików na dysku współdzielonym, aby przyznawać użytkownikom dodatkowe uprawnienia lub umożliwiać osobom spoza zespołu współpracę nad określonymi elementami.
Więcej informacji i przykłady kodu znajdziesz w artykule Udostępnianie plików, folderów i dysków.
Zarządzanie dyskami współdzielonymi jako administrator domeny
Aby zarządzać dyskami współdzielonymi w organizacji, użyj parametru useDomainAdminAccess z zasobami drives i permissions.
Użytkownicy wywołujący te metody z parametrem useDomainAdminAccess=true muszą mieć uprawnienia
Drive and Docs administratora.
Administratorzy mogą wyszukiwać dyski współdzielone lub aktualizować uprawnienia do dysków współdzielonych należących do ich organizacji, niezależnie od tego, czy są użytkownikami danego dysku współdzielonego.
Jeśli używasz kont usługi, może być konieczne podszywanie się pod uwierzytelnionego administratora za pomocą podszywania się pod konto usługi. Pamiętaj, że konta usługi nie należą do Twojej domeny Google Workspace, w przeciwieństwie do kont użytkowników. Jeśli udostępniasz zasoby Google Workspace, takie jak dokumenty czy wydarzenia, całej domenie Google Workspace, nie są one udostępniane kontom usługi. Więcej informacji znajdziesz w artykule Omówienie kont usługi.
Odzyskiwanie dysku współdzielonego, który nie ma organizatora
Poniższy przykład kodu pokazuje, jak odzyskać dyski współdzielone, które nie mają już organizatora.
Java
Python
Node.js
PHP
.NET
Uniemożliwianie użytkownikom pobierania, drukowania i kopiowania Twojego pliku
Możesz ograniczyć sposób, w jaki użytkownicy mogą pobierać, drukować i kopiować pliki na dyskach współdzielonych.
Aby sprawdzić, czy użytkownik może zmienić ograniczenia pobierania zastosowane przez organizatora
na dysku współdzielonym, sprawdź pole logiczne capabilities.canChangeDownloadRestriction. Jeśli pole capabilities.canChangeDownloadRestriction jest ustawione na true, można zastosować ograniczenia pobierania na dysku współdzielonym. Więcej informacji znajdziesz w artykule
Omówienie możliwości plików.
Zasób drives zawiera zbiór pól logicznych restrictions, które wskazują, czy można wykonać działanie na dysku współdzielonym.
Ograniczenia dotyczą dysku współdzielonego lub elementów na nim.
Ograniczenia można ustawić za pomocą metody drives.update.
Aby zastosować ograniczenia pobierania na dysku współdzielonym, menedżer dysku współdzielonego może ustawić
pole restrictions.downloadRestriction zasobu drives
za pomocą
DownloadRestriction obiektu.
Ustawienie pola logicznego restrictedForReaders na true oznacza, że pobieranie i kopiowanie jest ograniczone dla czytelników. Ustawienie pola logicznego restrictedForWriters na true oznacza, że pobieranie i kopiowanie jest ograniczone dla osób z uprawnieniami do edycji. Pamiętaj, że jeśli pole restrictedForWriters ma wartość true, pobieranie i kopiowanie jest też ograniczone dla czytelników. Podobnie ustawienie pola restrictedForWriters na true i pola restrictedForReaders na false jest równoznaczne z ustawieniem obu pól restrictedForWriters i restrictedForReaders na true.
Zgodność wsteczna
Wraz z wprowadzeniem obiektu DownloadRestriction zaktualizowano funkcję pola logicznego
restrictions.copyRequiresWriterPermission.
Teraz ustawienie restrictions.copyRequiresWriterPermission na true powoduje zaktualizowanie pola wartości logicznej restrictedForReaders obiektu DownloadRestriction na true, co oznacza, że pobieranie i kopiowanie jest ograniczone dla czytelników.
Ustawienie pola copyRequiresWriterPermission na false powoduje zaktualizowanie pól restrictedForWriters i restrictedForReaders na false. Oznacza to, że ustawienia ograniczeń pobierania i kopiowania są usuwane dla wszystkich użytkowników.
copyRequiresWriterPermissionDownloadRestriction Nie należy używać tych pól razem, ponieważ ich wartości mogą być sprzeczne.
Pola, które kontrolują funkcje pobierania, drukowania i kopiowania
W tabeli poniżej znajdziesz listę pól zasobu drives
które wpływają na funkcje pobierania, drukowania i kopiowania:
| Pole | Opis | Wersja |
|---|---|---|
capabilities.canCopy |
Czy bieżący użytkownik może kopiować pliki na dysku współdzielonym. | v2 i v3 |
capabilities.canDownload |
Czy bieżący użytkownik może pobierać pliki na dysku współdzielonym. | v2 i v3 |
capabilities.canChangeCopyRequiresWriterPermission |
Czy bieżący użytkownik może zmienić ograniczenie copyRequiresWriterPermission na dysku współdzielonym. |
v2 i v3 |
capabilities.canResetDriveRestrictions |
Czy bieżący użytkownik może przywrócić domyślne ograniczenia dysku współdzielonego. | v2 i v3 |
capabilities.canChangeDownloadRestriction |
Czy bieżący użytkownik może zmienić ograniczenie pobierania na dysku współdzielonym. | Tylko v3 |
restrictions.copyRequiresWriterPermission |
Czy opcje kopiowania, drukowania i pobierania plików na dysku współdzielonym są wyłączone dla czytelników i komentujących. Gdy wartość tego pola to true, dla każdego pliku na tym dysku współdzielonym ustawia się pole o tej samej nazwie na true. |
v2 i v3 |
restrictions.downloadRestriction |
Ograniczenia pobierania zastosowane przez menedżerów dysku współdzielonego. | Tylko v3 |
Limity folderów
Foldery na dyskach współdzielonych mają pewne limity miejsca na dane. Więcej informacji znajdziesz w artykule Limity dotyczące dysków współdzielonych na Dysku Google.
Limit elementów
Każdy dysk współdzielony użytkownika ma limit 500 tys. elementów, w tym plików, folderów i skrótów.
Po osiągnięciu limitu dysk współdzielony nie może już przyjmować elementów. Aby wznowić odbieranie plików, użytkownicy muszą trwale usunąć elementy z dysku współdzielonego. Pamiętaj, że elementy w koszu są wliczane do limitu, ale elementy trwale usunięte nie. Więcej informacji znajdziesz w artykule Przenoszenie plików i folderów do kosza oraz ich usuwanie.
Limit głębokości folderu
Folder na dysku współdzielonym nie może zawierać więcej niż 100 poziomów zagnieżdżonych folderów. Oznacza to, że folder podrzędny nie może być przechowywany w folderze, który jest zagnieżdżony na więcej niż 99 poziomach. To ograniczenie dotyczy tylko folderów podrzędnych.
Próby dodania więcej niż 100 poziomów folderów powodują zwrócenie
teamDriveHierarchyTooDeep
kodu stanu HTTP.