如何确定我的服务帐户路径在哪里?

时间:2018-09-27 13:29:25

标签: php google-cloud-platform google-cloud-storage google-cloud-functions

我正在尝试根据https://github.com/GoogleCloudPlatform/php-docs-samples/blob/master/auth/src/auth_cloud_explicit.php在代码中进行身份验证,但是我不知道作为$ serviceAccountPath传递什么。我将私有.json文件复制到了我的应用文件夹的根目录中。我需要在这里使用什么?

function auth_cloud_explicit($projectId, $serviceAccountPath)
{
    # Explicitly use service account credentials by specifying the private key
    # file.
    $config = [
        'keyFilePath' => $serviceAccountPath,
        'projectId' => $projectId,
    ];
    $storage = new StorageClient($config);
    # Make an authenticated API request (listing storage buckets)
    foreach ($storage->buckets() as $bucket) {
        printf('Bucket: %s' . PHP_EOL, $bucket->name());
    }
}

2 个答案:

答案 0 :(得分:0)

我认为$serviceAccountPath应该包含json配置文件的本地路径(从Google控制台下载)

答案 1 :(得分:0)

考虑到您已经将“ private.json”文件复制到了应用程序目录的根目录。您应考虑到为$ serviceAccountPath提供的本地路径应始终与您要导航到的应用程序文件的本地路径有关。例如,如果文件位于应用程序的根目录中,则可以使用“ ./private.json”。这意味着当您在Google Cloud Platform上部署应用程序时,您在代码中提供的指向本地驱动器(c://,F://等)的所有路径将不再起作用。