Я пишу код AWS Lambda для доступа и обновления электронной таблицы с URL-адресом в качестве входных данных с помощью Golang. Пока я могу получить доступ к электронной таблице локально, используя идентификатор клиента OAuth, следуя руководству Google - https://developers.google.com/sheets/api/quickstart/go
Но поскольку я хочу запустить код из AWS Lambda, я хочу выполнить аутентификацию с помощью учетной записи службы Google. Я создал учетную запись службы и получил учетные данные, которые содержат информацию ниже.
{
"type": "service_account",
"project_id": "quickstart-1XXXXXXX806",
"private_key_id": "a1XXXXXXXXXXXXXXXXXXXXX3c3e5d8e",
"private_key": "-----BEGIN PRIVATE KEY-----\nMZ4C8......\nD\n-----END PRIVATE KEY-----\n",
"client_email": "[email protected]",
"client_id": "1XXXXXXXXXXXXXXXXX2",
"auth_uri": "https://accounts.google.com/o/oauth2/auth",
"token_uri": "https://oauth2.googleapis.com/token",
"auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs",
"client_x509_cert_url": "https://www.googleapis.com/robot/v1/metadata/x509/lambda%40quickstart-1573627656806.iam.gserviceaccount.com"
}
Я прочитал много документации, но я не нашел никаких ссылок для доступа к таблицам Google с использованием учетной записи службы Google с использованием кода Golang. Каждый документ ссылается на следующую ссылку Github - https://github.com/googleapis/google-api-go-client Но поскольку я недавно начал работать в Golang, я действительно не понимаю, как это реализовать. После прочтения руководства Google я понимаю, что для учетной записи службы требуется поток, как показано ниже -
Но я все еще не могу написать для этого код Голанга. Буду признателен, если кто-нибудь поделится ссылками :)