最近、会社全体でDropboxからGoogleドライブに移行し、1つのユーザーアカウントを使用してすべてをGoogleドライブに移行しました。現在、ほとんどの/すべてのファイル/フォルダーは1つのアカウントによって所有されています。フォルダーは部門ごとに分けられており、そのフォルダー内のすべてのファイルの所有者を部門長に設定したいと思います。各フォルダに移動せずにそれを行う方法はありますか? webappでこれを解決したいのですが、そうでない場合、APIでこれをどのように行うことができますか?
これを処理するために コマンドラインツール を作成しました。
GitHubプロジェクトのセットアップ手順に従って、指定されたパスプレフィックスと新しい所有者の電子メールアドレスを使用してツールを実行できます。
python transfer.py PATH-PREFIX NEW-OWNER-EMAIL
OAuthから認証を取得した後、認証を受けたGoogleドライブアカウントを再帰的にたどり、パスプレフィックスと一致して(一致しないものを無視)、所有権を新しいメールに転送します。新しいメールアドレスが、アイテムでまだ共有されていないユーザーを示している場合、それも同様に処理します。現在の所有者はアクセスできなくなりますが、新しい所有者または古い所有者はそれを取り消すことができます。
ドライブ内のアイテムの所有権を常に譲渡できるとは限らないことに注意してください。たとえば、アイテムの所有権をG Suite(Google Apps for Work)アカウントから通常のGMailアカウントに移動することはできません。共有することはできますが(スクリプトが行います)、所有権の譲渡は失敗します。
私には非常に簡単なプロセスのようです...
GoogleドライブのWebGUIの上部にある検索バーを使用できます。 owner
ドロップダウンでユーザーのユーザー名を選択し、type
(必要に応じてフォルダーなど)を選択し、所有者を部門長にしたいフォルダーの場所を選択して、[検索]をクリックします。 。
検索結果で、1ラウンドで処理するフォルダーをいくつでも選択します(進行状況を確認できるように、チャンクで処理するのが好きです)。次に、「共有」を右クリックします。部門長のユーザーを、書き込みアクセスではなくOWNERに設定します。
必要に応じてすすぎ、繰り返します(同じことを再度行うと、すでに変換されているファイルは、部門長が所有しているため、もちろん検索に表示されません)。
複数のフォルダを確認してから、マウスの右ボタンを押して「共有」を選択し、アクセス権を編集できます。
それはあなたのために働きますか?
これを行うための最良の方法は、「すべてのアイテム」ビューに進み、ファイルがロードされなくなるまでスクロールし続け、現在のビューのすべてのファイルとフォルダーを選択する上にあるチェックボックスを押すことです。すべてのアイテムを選択したら、[詳細]をクリックしてから、共有してもう一度共有します。共有ボックスで適切な共有レベルに変更し、完了をクリックします。
ここでの唯一の注意点は、すべてのファイルとフォルダーのアクセス許可を変更することです。
ファイルとサブフォルダーが異なる人々によって所有されている共有フォルダーを使用する一般的なGmailで見つけることができる最良の方法:ファイルを保持するアカウントにログインし、[マイアカウント]-> [コンテンツの管理]に移動してすべてのファイルをダウンロードします。 Zipには、元の構造のすべてのファイルが含まれます。すべてのファイルを新しい所有者アカウントで再アップロード(上書きを含む)します。
Google Appsユーザーの場合:管理者は https://admin.google.com/ にサインインし、[アプリ]> [Google Apps]> [ドライブ]> [所有権を譲渡]に移動できます。この操作は、両方のユーザーがファイルにアクセスできるようにしますが、すべてのファイル/フォルダーの所有権をUserAからUserBに再帰的に変更します。すべてを一時的に自分自身に転送してから、各ファイル/フォルダに必要な権限を即座に設定できます。