Propozycja dostępu to propozycja od osoby wysyłającej prośbę do osoby zatwierdzającej, aby przyznać odbiorcy dostęp do elementu na Dysku Google.
Osoba zatwierdzająca może sprawdzać wszystkie nierozwiązane propozycje dostępu do plików na Dysku i podejmować odpowiednie działania. Oznacza to, że możesz przyspieszyć proces zatwierdzania, programowo wysyłając zapytania o propozycje dostępu, a następnie je rozwiązując. Umożliwia to też osobie zatwierdzającej wyświetlanie propozycji w zbiorczym widoku.
Interfejs Google Drive API udostępnia zasób
accessproposals, dzięki któremu możesz wyświetlać
i rozwiązywać oczekujące propozycje dostępu. Metody zasobu accessproposals działają w przypadku plików, folderów i plików na dysku współdzielonym, ale nie w przypadku dysku współdzielonego.
Poniższe terminy dotyczą propozycji dostępu:
- Osoba wysyłająca prośbę: użytkownik, który inicjuje propozycję dostępu do elementu na Dysku.
- Odbiorca: użytkownik, który otrzyma dodatkowe uprawnienia do pliku, jeśli propozycja dostępu zostanie zaakceptowana. W wielu przypadkach odbiorca jest tą samą osobą co zgłaszający, ale nie zawsze.
- Osoba zatwierdzająca: użytkownik odpowiedzialny za zatwierdzenie (lub odrzucenie) propozycji dostępu. Zwykle jest to spowodowane tym, że jest właścicielem dokumentu lub ma możliwość udostępniania dokumentu.
Używanie parametru fields
Jeśli chcesz określić pola, które mają być zwracane w odpowiedzi, możesz ustawić
fields parametr
systemowy
w dowolnej metodzie zasobu accessproposals. Jeśli pominiesz parametr fields, serwer zwróci domyślny zestaw pól właściwy dla danej metody. Aby
zwrócić inne pola, zapoznaj się z sekcją Zwracanie określonych
pól.
Pobieranie oczekującej propozycji dostępu
Aby pobrać propozycję dostępu, użyj metody get w zasobie accessproposals z parametrami ścieżki fileId i proposalId. Jeśli nie znasz identyfikatora propozycji, możesz wyświetlić listę oczekujących propozycji dostępuza pomocą metody list.
Wyświetlanie listy oczekujących propozycji dostępu
Aby wyświetlić listę wszystkich oczekujących propozycji dostępu do elementu na Dysku, wywołaj metodę
list w zasobie
accessproposals i dodaj parametr ścieżki
fileId.
Tylko osoby zatwierdzające plik mogą wyświetlać listę oczekujących propozycji dotyczących pliku. Osoba zatwierdzająca to użytkownik, który ma uprawnienie can_approve_access_proposals do pliku. Jeśli osoba wysyłająca prośbę nie jest osobą zatwierdzającą, zwracana jest pusta lista. Więcej informacji
o capabilitiesznajdziesz w artykule Informacje o uprawnieniach do plików.
Treść odpowiedzi
składa się z obiektu accessproposals reprezentującego listę nierozwiązanych propozycji dostępu
do pliku.
Obiekt accessproposals zawiera informacje o każdej propozycji, takie jak osoba wysyłająca prośbę, odbiorca i wiadomość dodana przez osobę wysyłającą prośbę. Zawiera też
obiekt RoleAndView
, który grupuje proponowaną przez osobę wysyłającą prośbę role z view. Ponieważ role jest polem powtarzalnym, dla każdej oferty pakietowej może istnieć wiele ról. Na przykład propozycja może mieć obiekt RoleAndView z wartościami role=reader i view=published oraz dodatkowy obiekt RoleAndView z wartością role=writer. Więcej informacji znajdziesz w artykule
Widoki.
Aby dostosować stronicowanie lub filtrowanie propozycji dostępu, przekaż te parametry zapytania:
pageToken: token strony otrzymany z poprzedniego wywołania metody list. Podaj ten token, aby pobrać następną stronę.pageSize: maksymalna liczba propozycji dostępu, które mają być zwracane na stronie.
Rozwiązywanie oczekujących propozycji dostępu
Aby rozwiązać wszystkie oczekujące propozycje dostępu do elementu na Dysku, wywołaj metodę resolve w zasobie accessproposals i dodaj parametry ścieżki fileId i proposalId.
Metoda resolve zawiera parametr zapytania action, który określa działanie, jakie należy podjąć w związku z ofertą pakietową. Obiekt
Action śledzi
zmianę stanu oferty pakietowej, dzięki czemu wiemy, czy jest ona akceptowana czy odrzucana.
Metoda resolve zawiera też opcjonalne parametry zapytania role i view. Obsługiwane są tylko role writer, commenter i reader. Jeśli rola nie jest określona, domyślnie jest ustawiona na reader. Więcej informacji znajdziesz w artykule Role
i uprawnienia. Dodatkowy opcjonalny parametr zapytania sendNotification umożliwia wysłanie e-maila z powiadomieniem do zgłaszającego, gdy oferta pakietowa zostanie zaakceptowana lub odrzucona.
Podobnie jak w przypadku metody list, użytkownicy rozwiązujący propozycję muszą mieć uprawnienie can_approve_access_proposals do pliku. Więcej informacji
o capabilitiesznajdziesz w artykule Informacje o uprawnieniach do plików.
Propozycje są rozwiązywane przy użyciu tych samych wzorców, które są wymienione w sekcji Scenariusze udostępniania zasobów na Dysku. Jeśli istnieje kilka propozycji dla tego samego użytkownika, ale z różnymi rolami, obowiązują te zasady:
- Jeśli jedna propozycja zostanie zaakceptowana, a druga odrzucona, do elementu na Dysku zostanie zastosowana zaakceptowana rola.
- Jeśli obie propozycje zostaną zaakceptowane w tym samym czasie, zostanie zastosowana propozycja z wyższymi uprawnieniami (np.
role=writerzamiastrole=reader). Druga propozycja dostępu zostanie usunięta z elementu.
Po wysłaniu propozycji do metody resolve działanie udostępniania zostanie zakończone. Rozwiązana propozycja dostępu nie jest już zwracana przez metodę list. Gdy propozycja zostanie zaakceptowana, użytkownik musi użyć zasobu permissions, aby zaktualizować uprawnienia do pliku lub
folderu. Więcej informacji znajdziesz w artykule Aktualizowanie
uprawnień.