0 votes
1 view
in AWS by (18.2k points)

I'm trying to access the Google Cloud API from an AWS Lambda function but I don't know how to authenticate. The auth guide in the Google Cloud documentation (https://cloud.google.com/docs/authentication) wants me to download a credentials JSON file and use Application Default Credentials, but as anyone who has used hosted functions already knows, the point is that you don't need to manage a server or runtime environment, so Lambda doesn't give me the ability to store arbitrary files in the environment of the running code. 

I can use the Cloud SDK locally to get an access token but it expires so I can't use it in my function as a permanent solution.

Is there not a way I can get an access token that I can use indefinitely in my code to call the Google Cloud API? Is there any other solution?

1 Answer

0 votes
by (42.5k points)

Instead of saving the credentials in a JSON file, you can hard-code them as said in this documentation.

https://googlecloudplatform.github.io/google-cloud-node/#/docs/language/0.7.0/guides/authentication

This example calls the Language API:

var language = require('@google-cloud/language')({

  projectId: '',

  credentials: {

      client_email: '',

      private_key: '',

  }

});

 

language.detectEntities('Axel Foley is from Detroit').then(function(data) {

  var entities = data[0];

  var apiResponse = data[1];

});

Welcome to Intellipaat Community. Get your technical queries answered by top developers !


Categories

...