J'essaie de répertorier les utilisateurs d'une entreprise à l'aide du Java SDK. Le code que je suis en train est:API Google Java pour lister les utilisateurs d'une entreprise
try {
httpTransport = GoogleNetHttpTransport.newTrustedTransport();
credential = new GoogleCredential.Builder()
.setTransport(httpTransport)
.setJsonFactory(JSON_FACTORY)
.setServiceAccountId("[email protected]")
.setServiceAccountScopes(Collections.singleton(DirectoryScopes.ADMIN_DIRECTORY_USER))
.setServiceAccountUser("[email protected]")
.build();
Directory directory = new Directory.Builder(httpTransport, JSON_FACTORY, credential)
.setApplicationName("My App Name")
.build();
Users result = null;
result = directory.users().list().setDomain("myTestDomain.com").execute();
}
J'ai une chaîne clé privée qui a comme:
key = new String("-----BEGIN RSA PRIVATE KEY-----\n"
+"blah1\n"
+"blah2\n"
+"-----END PRIVATE KEY-----");
Maintenant, comment puis-je obtenir les informations d'identification Google à construire avec ce qui précède la chaîne « clé » comme le PrivateKey et être capable de lister les utilisateurs. J'ai essayé, en lisant la chaîne sous la forme d'un tableau d'octets, la lisant à partir d'un fichier etc. mais tous ceux-ci ont échoué avec une erreur ou l'autre.
J'ai juste besoin d'obtenir la liste des utilisateurs dans le domaine myTestDomain.com pour lequel [email protected] est l'administrateur. Je suis capable de réussir la même chose avec le code Go suivant btw. Je me bats avec seulement le code Java. Des pointeurs? Merci.
Code Go:
conf := &jwt.Config{
Email: "[email protected]",
PrivateKey: []byte(`-----BEGIN RSA PRIVATE KEY-----
blah1
blah2
-----END PRIVATE KEY-----`),
Scopes: []string{admin.AdminDirectoryUserScope},
TokenURL: google.JWTTokenURL,
Subject: "[email protected]",
}
client := conf.Client(oauth2.NoContext)
srv, _ := admin.New(client)
u, _ := srv.Users.List().Domain("myTestDomain.com").Do()
fmt.Println(u.Users)