Я могу создать учетную запись службы, но у меня возникают проблемы при назначении роли учетной записи службы. Вот подход, который я использую
CloudResourceManager cloudResourceManagerService = createCloudResourceManagerService(clientId,
clientSecret);
GetIamPolicy getrequest = cloudResourceManagerService.projects().getIamPolicy(projectId,
new GetIamPolicyRequest());
Policy response = getrequest.execute();
//Modification to policy
List<String> members = response.getBindings().get(0).getMembers();
members.add("serviceAccount:name@my-project.iam.gserviceaccount.com");
response.getBindings().get(0).setMembers(members);
// ================= Установить политику ============ ============
String resource = "projects/" + projectId + "/serviceAccounts/" +
"name@my-project.iam.gserviceaccount.com";
SetIamPolicyRequest requestBody = new SetIamPolicyRequest().setPolicy(response);
SetIamPolicy setrequest = cloudResourceManagerService.projects().setIamPolicy(resource, requestBody);
Policy newResponse = setrequest.execute();
Этот код не выдает никакой ошибки, но также не устанавливает роль для учетной записи предоставляемой службы.