Die Google Play Android Developer API ist in meinem GCP-Projekt aktiviert. Es wurde vor ein paar Tagen aktiviert. Es wird „Aktiviert“ angezeigt, wenn ich es in der Konsole finde.
Anscheinend muss ich diese Rollen zum Dienstkonto hinzufügen, aber ich kann sie einfach nicht finden – Roles/androidpublisher.developer und Roles/serviceusage.serviceUsageConsumer.
Ich habe ein Dienstkonto erstellt und ihm diese Berechtigungen erteilt -
Code: Select all
Consumer Procurement Order Administrator, Consumer Procurement Order Viewer, Financial Services Admin, Financial Services Viewer
So initialisiere ich meinen Client. Es enthält die Schlüsseldatei und alles. Dieser Teil ist in Ordnung. Ich verwende v3
Code: Select all
const { google } = require('googleapis');
const { GoogleAuth } = require('google-auth-library');
const auth = new GoogleAuth({
keyFile: path.resolve(__dirname, '..', path.basename(keyFilePath)),
scopes: ['https://www.googleapis.com/auth/androidpublisher'],
});
this.androidPublisher = google.androidpublisher({
version: 'v3',
auth,
});
Code: Select all
const response = await this.androidPublisher.purchases.products.get({
packageName,
productId,
token: purchaseToken,
});
Code: Select all
errors: [
{
message: 'The current user has insufficient permissions to perform the requested operation.',
domain: 'androidpublisher',
reason: 'permissionDenied'
}
],
Ich verwende auch @google-cloud/recaptcha-enterprise mit einem anderen Dienstkonto. Dieses Dienstkonto ruft seine Anmeldeinformationsdatei aus der Umgebungsvariablen GOOGLE_APPLICATION_CREDENTIALS ab. Ich möchte in diesem Fall ein anderes Dienstkonto verwenden, daher musste ich eine separate JSON-Datei mit Anmeldeinformationen generieren und deren Pfad mit einem anderen Eigenschaftsnamen angeben.
Wenn ich den Dienst Google Play Android deaktiviere Entwickler-API Die Anfrage schlägt mit der Begründung fehl, dass die API nicht aktiviert ist. Die API wird also erkannt, aber ich kann dieser SA einfach nicht die richtigen Rollen zuordnen. Ich habe ihm die Berechtigung „Besitzer“ erteilt, aber selbst das ist mit einem 401-Fehler fehlgeschlagen.
Ich gehe zur Serviceseite für die Google Play Android Developer API und erstelle von dort aus sa und die SA hat keine Berechtigungen. WTF.