7
votes

Une application Google Apps peut-elle gérer les fichiers d'utilisateurs avec le lecteur SDK?

Le nouveau SDK est très bon pour l'utilisateur authentifié. Est-il possible d'utiliser lecteur SDK à l'aide de Google Apps Accès administratif à Impersonate d'autres utilisateurs de domaine?

L'API de DOCLIST peut le faire, mais il n'est pas possible de gérer et de copier des fichiers (PDF, JPG) avec cet outil.

J'utilise Java avec ce code: xxx

mais je reçois une erreur lorsque j'essaie de récupérer des données pour l'utilisateur@domain.com. Si je commente .SetServiceAcCountuser ("user@domain.com") Le code fonctionne génial pour le même compte que j'ai utilisé pour créer la clé.

dans l'ancienne API de DocList Nous avons imité un autre utilisateur de l'URL des demandes. Est-ce quelque chose de similaire?


3 commentaires

Quelle erreur obtenez vous? Assurez-vous d'ajouter l'ID client généré de la console APIS dans la CPanel de votre domaine comme décrit ici .


Salut Alain, ça marche bien maintenant, j'avais probablement mal avec ServiceAccountatuser. Je reçois une erreur de serveur de 500 serveur interne lorsque j'essaie de changer le propriétaire d'un fichier avec une mise à jour de la mise à jour et de la mise à jour ... peut-être parce qu'un fichier doit avoir un propriétaire..Je va essayer, merci pour l'aide


@Ridgh Pouvez-vous me donner une idée de l'accès aux documents des utilisateurs à l'aide de l'administrateur SDK. Actuellement, je travaille sur les documents des utilisateurs


3 Réponses :


5
votes

Vous pouvez le faire en utilisant comptes de service et spécifiant l'utilisateur à imiteronate lors de la construction de votre Réclamation d'affirmation.

Une fois que vous avez créé une clé de compte de service dans votre projet API (à partir du Console APIS ) , vous devrez ajouter ce projet à la liste de l'application tierce partie autorisée dans le CPanel. Plus d'informations à ce sujet peuvent être trouvées ici . L'ID client "que vous devez utiliser est celui qui est lié à la clé de compte de service et ressemble à - .apps.googleReercontent.com

Étant donné que vous souhaitez gérer un fichier d'autres utilisateurs, vous devrez autoriser l'étendue du lecteur: https://www.googleapis.com/auth/drive . .

La plupart de nos bibliothèques de clients s'occupent de suppression de la génération de réclamations pour les développeurs. Si vous pouviez spécifier quelle langue vous envisagez d'utiliser, je peux mettre à jour cette réponse en fournissant un extrait de code pour vous aider à démarrer.


2 commentaires

Y a-t-il une bibliothèque rubis pour y accomplir?


La bibliothèque client de Google pour Ruby prend en charge les comptes de service: code.google .Com / p / google-API-RUBY-Client / wiki / ServiceAccount s



0
votes

Mise à niveau:

Le code: p>

.setServiceAccountScopes(DriveScopes.DRIVE,Oauth2Scopes.USERINFO_EMAIL,Oauth2Scopes.USERINFO_PROFILE)


2 commentaires

Avez-vous accorde ces scopes supplémentaires lorsque vous avez configuré l'accès OAuth dans le CPanel? De l'aide Google CPanel: Pour chaque client, vous pouvez spécifier plusieurs API, séparées par des virgules. Par exemple, pour permettre l'accès à la fois aux contacts et à la liste des documents API: " Google.com/m8/feeds , docs.google.com/feeds "


David, dans mon code, j'a ajouté les étanches, sur Google API Console, je ne vois pas ces champs, je me trompe ?. J'ai utilisé des paramètres de groupes API plus l'API API et OAutH 2.0 Flux Web correctement. Ma question concerne la DOCLIST API + DRIVE API et le compte de service OAuth Flow ... J'espère utiliser uniquement SDK de lecteur, mais ce n'est pas possible de gérer les autorisations (le champ de messagerie n'est pas retourné pour la confidentialité) ..



0
votes

ok voici le code complet dans dartlang pour répertorier les fichiers utilisateur impersonnés @ Your_Domain fichiers utilisateur avec la clé JSON

Pour exécuter, vous devrez générer une clé JSON (à la place de P12) via Console de Développeur Google (Dans le contexte du projet: API & Auth -> Critiques) Génère de la clé JSON

Dépendances du projet DART dans PUBSPEC.YAML: Googleapis Googleapis_auth ASYNC) xxx


0 commentaires