如何在Python中启用对Google Drive API v3服务帐户的全域委托?

2024-06-08 20:32:30 发布

您现在位置:Python中文网/ 问答频道 /正文

I found转让所有权的最佳方式是

  1. 启用服务帐户的域范围委派

  2. 初始化驱动器服务时模拟用户,如下所示:

using (var credentialJSON =new FileStream(_settings.CertificatePath,FileMode.Open, FileAccess.Read))
        {
            var credentialParameters =
                NewtonsoftJsonSerializer.Instance.Deserialize<JsonCredentialParameters>(credentialJSON);

            credential = new ServiceAccountCredential(
                new ServiceAccountCredential.Initializer(credentialParameters.ClientEmail)
                {
                    Scopes = scopes,
                    User = ownerEmailAddress, //put in the actual user email address
                }.FromPrivateKey(credentialParameters.PrivateKey));
        }

如何在Python中实现同样的功能?我通常以以下方式创建驱动器:

credentials = service_account.Credentials.from_service_account_file(
        service_json_fp, scopes=SCOPES)

drive_api = build('drive', 'v3', credentials=credentials)

Tags: newvarservice方式帐户accountdrivecredentials