Google Drive API Dateiberechtigung festlegen (Berechtigungen für Google Drive-Dateien festlegen)

Hallo!

Laden Sie Dateien mit der Android-App auf Google Drive hoch Möglicherweise möchten Sie diese Datei für andere freigeben.

Dieses Mal werde ich einen Prozess schreiben, um Berechtigungen für die hochgeladene Datei zu erteilen!

Sie können mehrere Berechtigungen festlegen (setType)! !! -Für jeden Benutzer. (Legen Sie den Namen und die E-Mail-Adresse des Google-Kontos fest.) -Für jede Gruppe. (E-Mail der Google-Gruppe) -Für jede Domain. (Com.jp usw.) ・ Andere (irgendjemand).

CreatePermission.java


    /**
     *Berechtigungseinstellungen
     * @param driveService drive
     * @param fileId fileID
     * @throws IOException create permission happen IOException
     */
    private void createPermission(Drive driveService,String fileId) throws IOException{
        JsonBatchCallback<Permission> callback = new JsonBatchCallback<Permission>() {
            @Override
            public void onFailure(GoogleJsonError e, HttpHeaders responseHeaders) {
                // Handle error
                System.err.println(e.getMessage());
            }
            @Override
            public void onSuccess(Permission permission, HttpHeaders responseHeaders) {
                // Handle success
                System.out.println("Permission ID: " + permission.getId());
            }
        };
        BatchRequest batch = driveService.batch();
        Permission userPermission = new Permission()
                .setType("anyone")
                .setRole("reader");
        driveService.permissions().create(fileId, userPermission)
                .setFields("id")
                .queue(batch, callback);
        batch.execute();
    }

!! Beim Entfernen von Berechtigungen! Es ist erforderlich, die zum Löschen erforderliche ID im Voraus zu erhalten.

DeletePermissions.java


    File fileData; //Dateiinformationen von Google Drive, die Sie löschen möchten
    for(Permission permission : fileData.getPermissions()){
        driveService.permissions()
        //Datei-ID, für die die Berechtigung gelöscht werden soll, Berechtigungs-ID.
        .delete(fileData.getId() , permission.getId())
        .queue(batch,callback);
    }

!! Andere! Wenn Sie Berechtigungen für den Google-Ordner (Boss) festlegen, Die Dateien (Minions), die diesem Boss gehören, haben die gleichen Berechtigungen. Seien Sie jedoch vorsichtig, da es keinen Sinn macht, diese Berechtigung für Ihre Schergen zu löschen! !! Besiege den Boss oder bereite einen anderen Boss vor!

Danach stellen Sie bitte die Atmosphäre ein. Bitte kommentieren Sie, wenn etwas passiert. Weitere Details finden Sie unter der unten stehenden URL.

https://developers.google.com/drive/api/v3/manage-sharing

Recommended Posts

Google Drive API Dateiberechtigung festlegen (Berechtigungen für Google Drive-Dateien festlegen)
Google Drive-Datei verschieben
Laden Sie eine JPG-Datei mit der Google Drive-API in Python hoch
ls -R auf Google Drive
Google Drive API-Tipps (Python)
Laden Sie Google Drive-Dateien in Python herunter
[Rails 6 / Google Map API] Veröffentlichen Sie eine Adresse und setzen Sie mehrere Markierungen auf der Karte
Tweet (API 1.1) mit Google App Engine für Python
Laden Sie Dateien direkt auf Google Drive herunter (mithilfe von Google Colaboratory).
Laden Sie Dateien mit Lambda (Python) auf Google Drive hoch.