Chaque fichier, dossier et Drive partagé Google Drive est associé à des autorisations. Chaque ressource identifie l'autorisation pour un type
(utilisateur, groupe, domaine, utilisateur) et role
spécifiques, tels que "commentateur" ou "lecteur". Par exemple, un fichier peut disposer d'une autorisation accordant à un utilisateur spécifique (type=user
) un accès en lecture seule (role=reader
), tandis qu'une autre autorisation permet aux membres d'un groupe spécifique (type=group
) d'ajouter des commentaires à un fichier (role=commenter
).
Pour obtenir la liste complète des rôles et des opérations autorisés par chacun, consultez la section Rôles.
Scénarios de partage des ressources Drive
Il existe cinq types de scénarios de partage:
Pour partager un fichier dans Mon Drive, l'utilisateur doit disposer au minimum de
role=writer
.Si la valeur booléenne
writersCanShare
est définie surFalse
pour le fichier, l'utilisateur doit disposer derole=owner
.Si l'utilisateur avec
role=writer
dispose d'un accès temporaire régi par une date et une heure d'expiration, il ne peut pas partager le fichier.
Pour en savoir plus, consultez Ajouter une date d'expiration.
Pour partager un dossier dans Mon Drive, l'utilisateur doit disposer de
role=writer
ou d'une version ultérieure.Si la valeur booléenne
writersCanShare
est définie surFalse
pour le fichier, l'utilisateur doit disposer de la valeurrole=owner
la plus permissive.L'accès temporaire (soumis à une date et une heure d'expiration) n'est pas autorisé sur les dossiers Mon Drive associés à
role=writer
.
Pour partager un fichier dans un Drive partagé, l'utilisateur doit disposer au minimum de
role=writer
.Le paramètre
writersCanShare
ne s'applique pas aux éléments des Drive partagés. Il est traité comme s'il était toujours défini surTrue
.L'accès temporaire (soumis à une date et une heure d'expiration) n'est pas autorisé dans les Drive partagés.
Pour partager un dossier dans un Drive partagé, l'utilisateur doit disposer de
role=organizer
.- Si la restriction
sharingFoldersRequiresOrganizerPermission
d'un Drive partagé est définie surFalse
, les utilisateurs disposant derole=fileOrganizer
peuvent partager des dossiers dans ce Drive partagé.
- Si la restriction
Pour gérer l'appartenance à un Drive partagé, l'utilisateur doit disposer de
role=organizer
. Seuls les utilisateurs et les groupes peuvent être membres de Drive partagés.
Propagation des autorisations
Les listes d'autorisations pour un dossier se propagent vers le bas. Tous les fichiers et dossiers enfants héritent des autorisations du parent. Chaque fois que les autorisations ou la hiérarchie sont modifiées, la propagation se produit de manière récursive dans tous les dossiers imbriqués. Par exemple, si un fichier existe dans un dossier et que ce dernier est ensuite déplacé dans un autre dossier, les autorisations du nouveau dossier se propagent dans le fichier. Si le nouveau dossier accorde à l'utilisateur du fichier un nouveau rôle, par exemple "rédacteur", il remplace son ancien rôle.
À l'inverse, si un fichier hérite de role=writer
d'un dossier et qu'il est déplacé vers un autre dossier fournissant un rôle de "lecteur", le fichier hérite désormais de role=reader
.
Les autorisations héritées ne peuvent pas être supprimées d'un fichier ou d'un dossier dans un Drive partagé. À la place, ces autorisations doivent être ajustées sur le parent direct ou indirect dont elles ont hérité. Les autorisations héritées peuvent être supprimées des éléments sous "Mon Drive" ou "Partagés avec moi".
À l'inverse, les autorisations héritées peuvent être remplacées sur un fichier ou un dossier de Mon Drive. Ainsi, si un fichier hérite de role=writer
à partir d'un dossier Mon Drive, vous pouvez définir role=reader
sur le fichier afin de réduire son niveau d'autorisation.
Fonctionnalités
La ressource Autorisations ne détermine pas la capacité de l'utilisateur actuel à effectuer des actions sur un fichier ou un dossier.
À la place, une ressource Files contient un ensemble de champs booléens capabilities
qui indiquent si une action peut être effectuée sur un fichier ou un dossier. L'API Google Drive définit ces champs en fonction de la ressource d'autorisations de l'utilisateur actuel associée au fichier ou au dossier.
Par exemple, lorsqu'Alex se connecte à votre application et tente de partager un fichier, son rôle est vérifié en termes d'autorisations sur le fichier. Si le rôle leur permet de partager un fichier, les capabilities
associées au fichier, telles que canShare
, sont renseignées par rapport au rôle. Si Alex souhaite partager le fichier, votre application vérifie que capabilities
canShare
est défini sur true
.
Créer une autorisation
Les deux champs suivants sont nécessaires lors de la création d'une autorisation:
type
:type
identifie le champ d'application de l'autorisation (user
,group
,domain
ouanyone
). Une autorisation avectype=user
s'applique à un utilisateur spécifique, tandis qu'une autorisation avectype=domain
s'applique à tous les utilisateurs d'un domaine spécifique.role
: le champrole
identifie les opérations quetype
peut effectuer. Par exemple, une autorisation avectype=user
etrole=reader
accorde à un utilisateur spécifique un accès en lecture seule au fichier ou au dossier. Une autorisation avectype=domain
etrole=commenter
permet également à tous les membres du domaine d'ajouter des commentaires à un fichier. Pour obtenir la liste complète des rôles et des opérations autorisés par chacun, consultez la section Rôles.
Lorsque vous créez une autorisation où type=user
ou type=group
, vous devez également fournir un emailAddress
pour lier l'utilisateur ou le groupe spécifique à l'autorisation.
Lorsque vous créez une autorisation où type=domain
, vous devez également fournir un domain
pour lier un domaine spécifique à l'autorisation.
Pour créer une autorisation:
- Utilisez la méthode
permissions.create
avecfileId
pour le fichier ou le dossier associé. - Dans le corps de la requête, identifiez
type
etrole
. - Si
type=user
outype=group
, fournissez unemailAddress
. Si la valeur esttype=domain
, fournissez undomain
.
Utiliser des audiences cibles
Les audiences cibles sont des groupes de personnes, tels que des services ou des équipes, avec lesquelles vous pouvez recommander aux utilisateurs de partager leurs éléments. Vous pouvez encourager les utilisateurs à partager des éléments avec une audience plus spécifique ou limitée plutôt que l'ensemble de votre organisation. Les audiences cibles peuvent vous aider à améliorer la sécurité et la confidentialité de vos données, et à faciliter le partage approprié pour les utilisateurs. Pour en savoir plus, consultez la page À propos des audiences cibles.
Pour utiliser les audiences cibles:
Connectez-vous à la console d'administration Google.
Pour cette tâche, vous devez être connecté à un compte disposant de droits de super-administrateur.
Accédez à Menu > Annuaire > Audiences cibles.
Dans la liste des audiences cibles, cliquez sur le nom de l'audience cible. Pour créer une audience cible, consultez Créer une audience cible.
Copiez l'ID unique de l'URL d'audience cible:
https://admin.google.com/ac/targetaudiences/ID
.Créez une autorisation avec
type=domain
, puis définissez le champdomain
surID.audience.googledomains.com
.
Pour découvrir comment les utilisateurs interagissent avec les audiences cibles, consultez Expérience utilisateur pour le partage par lien.
Récupérer toutes les autorisations pour un fichier, un dossier ou un Drive partagé
Utilisez la méthode permissions.list
pour récupérer toutes les autorisations pour un fichier, un dossier ou un Drive partagé.
Vérifier les autorisations des utilisateurs
Lorsque votre application ouvre un fichier, elle doit vérifier ses fonctionnalités et afficher l'UI pour refléter les autorisations de l'utilisateur actuel. Par exemple, si l'utilisateur ne dispose pas de la capacité canComment
sur le fichier, la fonctionnalité de commentaire doit être désactivée dans l'UI.
Pour vérifier les capacités, appelez files.get
avec fileId
et le paramètre fields
défini sur le champ capabilities
.
Pour en savoir plus sur le renvoi de champs à l'aide du paramètre fields
, consultez la section Renvoyer des champs spécifiques pour un fichier.
Déterminer la source du rôle pour les fichiers et les dossiers des Drive partagés
Pour modifier le rôle d'un fichier ou d'un dossier, vous devez connaître la source du rôle. Pour les Drive partagés, la source d'un rôle peut être basée sur l'appartenance à un Drive partagé, sur le rôle d'un dossier ou sur un fichier.
Pour déterminer la source du rôle pour un Drive partagé ou des éléments de ce Drive, appelez permissions.get
avec les paramètres fileId
, permissionId
et fields
définis dans le champ permissionDetails
. Pour trouver permissionId
, utilisez permissions.list
avec fileId
.
Ce champ répertorie toutes les autorisations héritées et directes sur les fichiers pour l'utilisateur, le groupe ou le domaine.
Modifier les autorisations
Pour modifier les autorisations sur un fichier ou un dossier, vous pouvez modifier le rôle attribué:
Appelez
permissions.update
avec les autorisationspermissionId
à modifier etfileId
pour le fichier, le dossier ou le Drive partagé associé. Pour trouverpermissionId
, utilisezpermissions.list
avecfileId
.Dans la requête, identifiez le nouveau
role
.
Vous pouvez accorder des autorisations sur des fichiers ou des dossiers individuels d'un Drive partagé, même si l'utilisateur ou le groupe en est déjà membre. Par exemple, Alex dispose de role=commenter
dans le cadre de son adhésion à un Drive partagé. Toutefois, votre application peut accorder des autorisations à Alex role=writer
pour un fichier dans un Drive partagé. Dans ce cas, comme le nouveau rôle est plus permissif que celui attribué via son appartenance, le nouveau rôle devient le rôle effectif pour le fichier ou le dossier.
Révoquer l'accès à un fichier ou un dossier
Pour révoquer l'accès à un fichier ou un dossier, appelez delete
avec fileId
et permissionId
pour supprimer l'autorisation.
Pour les éléments présents dans "Mon Drive", il est possible de supprimer une autorisation héritée. La suppression d'une autorisation héritée révoque l'accès à l'élément et aux éléments enfants, le cas échéant.
Les autorisations héritées des éléments d'un Drive partagé ne peuvent pas être révoquées. Mettez à jour ou révoquez plutôt l'autorisation sur le fichier ou le dossier parent.
L'opération delete
permet également de supprimer les autorisations directement appliquées à un fichier ou dossier Drive partagé.
Transférer la propriété d'un fichier vers un autre compte Google Workspace de la même organisation
La propriété des fichiers de "Mon Drive" peut être transférée d'un compte Google Workspace à un autre compte de la même organisation. Une organisation qui possède un Drive partagé est propriétaire des fichiers qu'elle contient. Par conséquent, les transferts de propriété ne sont pas compatibles avec les fichiers et dossiers des Drive partagés. Les organisateurs d'un Drive partagé peuvent déplacer des éléments de ce Drive vers leur propre dossier "Mon Drive", qui leur en transfère la propriété.
Pour transférer la propriété d'un fichier dans "Mon Drive", effectuez l'une des opérations suivantes:
Créez une autorisation de fichier accordant l'accès à un utilisateur spécifique (
type=user
) (role=owner
).Mettez à jour l'autorisation d'un fichier existant avec
role=owner
et transférez la propriété à l'utilisateur spécifié (transferOwnership=true
).
Transférer la propriété d'un fichier d'un compte personnel à un autre
La propriété des fichiers peut être transférée d'un compte personnel à un autre. Toutefois, Drive ne transfère la propriété d'un fichier entre deux comptes personnels que lorsque le nouveau propriétaire potentiel accepte explicitement le transfert. Pour transférer la propriété d'un fichier d'un compte personnel à un autre:
Le propriétaire actuel effectue un transfert de propriété en créant ou en mettant à jour l'autorisation d'accès au fichier du nouveau propriétaire potentiel. L'autorisation doit inclure les paramètres suivants:
role=writer
,type=user
etpendingOwner=true
. Si le nouveau propriétaire crée une autorisation pour le propriétaire potentiel, une notification par e-mail lui est envoyée, indiquant qu'il lui est demandé de devenir propriétaire du fichier.Le nouveau propriétaire accepte la demande de transfert de propriété en créant ou en mettant à jour son autorisation de fichier. L'autorisation doit inclure les paramètres suivants :
role=owner
ettransferOwnership=true
. Si le nouveau propriétaire crée une autorisation, une notification par e-mail lui est envoyée, indiquant que la propriété a été transférée.
Lorsqu'un fichier est transféré, le rôle du propriétaire précédent passe à writer
.
Modifier plusieurs autorisations avec des requêtes par lot
Nous vous recommandons vivement d'utiliser des requêtes par lot pour modifier plusieurs autorisations.
Voici un exemple de modification d'autorisations par lot avec une bibliothèque cliente.