如何使用服务帐户转移Google文件的所有权

时间:2015-09-24 15:20:36

标签: google-apps-script

我使用以下内容创建了一个服务帐户:https://developers.google.com/drive/web/delegation 我下载了它要求我下载为JSON文件的文件,如果这有所不同的话。

现在如何使用该服务帐户使用应用程序脚本启动所有权转移?

function transferOwnership() {
  var fileId = "1YzwfuawY8OiFIw-nbUCagTUhrxmqH2PEyMmYz1NMT9A";

  var p = {};
  p.role = "owner";
  p.type = "user";
  p.value = "email@ofnewowner.com";

  Drive.Permissions.insert(p,fileId);
}

2 个答案:

答案 0 :(得分:0)

如果文件在云端硬盘中,您应该尝试执行以下操作:

 function transferOwnership() {
  var fileId = "1YzwfuawY8OiFIw-nbUCagTUhrxmqH2PEyMmYz1NMT9A";

  var owner = "email@ofnewowner.com";

  Drive.getFileById(fileId).setOwner(owner);
}

希望这有帮助!

答案 1 :(得分:0)

我能够通过app脚本api使用Spencer Easton提供的库和说明,使用服务帐户成功转移文件的所有权。

https://github.com/Spencer-Easton/Apps-Script-Drive-Service-Account-Libarary/blob/master/src/saDrive.gs