1

ドライブAPIを使用するGoogleアプリエンジンで、このエラーアクセスが拒否されました(java.io.FilePermission \images\849cfc1ab7e594e7dba28cfdf37cf9bea87c5de2-privatekey.p12 }

サービス アカウントを使用してドライブ API にアクセスしようとしています 。https: //developers.google.com/drive/service-accounts からコードを記述します。

ただし、最後の行でファイル @ FIle Reading time にアクセスしているときに、常にこのエラーが発生します。ここにコードがあります

HttpTransport httpTransport = new NetHttpTransport();
          JacksonFactory jsonFactory = new JacksonFactory();
          GoogleCredential credential = new GoogleCredential.Builder()
              .setTransport(httpTransport)
              .setJsonFactory(jsonFactory)
              .setServiceAccountId(SERVICE_ACCOUNT_EMAIL)
              .setServiceAccountScopes(DriveScopes.DRIVE)
              .setServiceAccountPrivateKeyFromP12File(
                new java.io.File(SERVICE_ACCOUNT_PKCS12_FILE_PATH))
              .build();
          Drive service = new Drive.Builder(httpTransport, jsonFactory, null)
              .setHttpRequestInitializer(credential).build();

よろしくおねがいします....

4

3 に答える 3

0

の値は"SERVICE_ACCOUNT_PKCS12_FILE_PATH"?

エラーにバックスラッシュが表示されるのは非常に奇妙です:

\images\849cfc1ab7e594e7dba28cfdf37cf9bea87c5de2-privatekey.p12

少なくとも、webapp のルートからの相対パス、できればセキュリティのために WEB-INF ディレクトリへのスラッシュimagesを除く必要があります。

于 2014-01-06T16:53:10.960 に答える
0

App Engine アプリは自分自身を直接識別できるようになりました。サービス アカウントを使用する必要さえありません。このサービスを使用する特別な理由がない場合は、https://developers.google.com/appengine/docs/java/appidentity/overview#Asserting_Identity_to_Google_APIsを参照することをお勧めします。

于 2013-05-04T11:03:53.917 に答える