Share via


Bibliothèque de client Azure Purview Share pour .NET - version 1.0.0-beta.3

Partage de données Microsoft Purview permet de partager des données sur place à partir de Azure Data Lake Storage Gen2 et de comptes de stockage Azure, à la fois au sein et entre les organisations.

Les fournisseurs de données peuvent utiliser Partage de données Microsoft Purview pour partager leurs données directement avec d’autres utilisateurs et partenaires (appelés consommateurs de données) sans duplication de données, tout en gérant de manière centralisée leurs activités de partage à partir de Microsoft Purview.

Pour les consommateurs de données, Partage de données Microsoft Purview fournit un accès en quasi-temps réel aux données partagées avec eux par un fournisseur.

Les principales fonctionnalités fournies par Partage de données Microsoft Purview sont les suivantes :

  • Partagez des données au sein de l’organisation ou avec des partenaires et des clients en dehors de l’organisation (au sein du même locataire Azure ou entre différents locataires Azure).
  • Partagez des données à partir d’ADLS Gen2 ou de stockage Blob sur place sans duplication de données.
  • Partagez des données avec plusieurs destinataires.
  • Accéder aux données partagées en quasi-temps réel.
  • Gérez les relations de partage et effectuez le suivi des personnes avec qui les données sont partagées/à partir de, pour chaque compte de stockage ADLSGen2 ou Blob.
  • Arrêtez l’accès au partage à tout moment.
  • Expérience flexible via le portail de gouvernance Microsoft Purview ou via les API REST.

Pour en savoir plus sur ce produit, consultez les ressources suivantes.

| Code sourcePackage (NuGet) | Documentation produit

Prise en main

Installer le package

Installez la bibliothèque de client Microsoft Purview Share pour .NET avec NuGet :

dotnet add package Azure.Analytics.Purview.Sharing --prerelease

Prérequis

Authentifier le client

Utilisation d’Azure Active Directory

Cet exemple illustre l’utilisation de DefaultAzureCredential pour l’authentification via Azure Active Directory. Toutefois, toutes les informations d’identification proposées par Azure.Identity seront acceptées. Pour plus d’informations sur les autres informations d’identification, consultez la documentation Azure.Identity .

Une fois que vous avez choisi et configuré vos informations d’identification, vous pouvez créer des instances de .SentSharesClient

Concepts clés

Fournisseur de données : Un fournisseur de données est la personne qui crée un partage en sélectionnant une source de données, en choisissant les fichiers et dossiers à partager et avec qui les partager. Microsoft Purview envoie ensuite une invitation à chaque consommateur de données.

Consommateur de données : Un consommateur de données est la personne qui accepte l’invitation en spécifiant un compte de stockage cible dans son propre abonnement Azure qu’il utilisera pour accéder aux données partagées.

Méthodes de protocole

Les opérations exposées par la bibliothèque de client Purview Share pour .NET utilisent des méthodes de protocole pour exposer les opérations REST sous-jacentes. Pour en savoir plus sur l’utilisation des clients du SDK Azure qui utilisent des méthodes de protocole, consultez notre documentation.

Sécurité des threads

Nous garantissons que toutes les méthodes de instance client sont thread-safe et indépendantes les unes des autres (instructions). Cela garantit que la recommandation de réutilisation des instances clientes est toujours sécurisée, même entre les threads.

Concepts supplémentaires

Options | du clientAccès à la réponse | Opérations | de longue duréeGestion des défaillances | Diagnostics | Moqueur | Durée de vie du client

##Examples

Exemples de fournisseurs de données

Les exemples de code suivants montrent comment les fournisseurs de données peuvent utiliser le Kit de développement logiciel (SDK) Java Microsoft Azure pour le partage Purview pour gérer leur activité de partage.

Créer un client de partage envoyé

var credential = new DefaultAzureCredential();
var endPoint = new Uri("https://my-account-name.purview.azure.com/share");
var sentShareClient = new SentSharesClient(endPoint, credential);

Créer un partage envoyé

var credential = new DefaultAzureCredential();
var endPoint = new Uri("https://my-account-name.purview.azure.com/share");
var sentShareClient = new SentSharesClient(endPoint, credential);

var data = new
{
    shareKind = "InPlace",
    properties = new
    {
        artifact = new
        {
            storeKind = "AdlsGen2Account",
            storeReference = new
            {
                referenceName = "/subscriptions/subscriptionId/resourceGroups/resourceGroup/providers/Microsoft.Storage/storageAccounts/sharerStorageAccount",
                type = "ArmResourceReference"
            },
            properties = new
            {
                paths = new[]
               {
                    new
                    {
                        containerName = "containerName",
                        senderPath = "senderPath",
                        receiverPath = "receiverPath"
                    }
                }
            }
        },
        displayName = "displayName",
        description = "description",
    }
};

Operation<BinaryData> createResponse = await sentShareClient.CreateOrReplaceSentShareAsync(WaitUntil.Completed, "sentShareId", RequestContent.Create(data));

Obtenir un partage envoyé

Après avoir créé un partage envoyé, les fournisseurs de données peuvent le récupérer.

var credential = new DefaultAzureCredential();
var endPoint = new Uri("https://my-account-name.purview.azure.com/share");
var sentShareClient = new SentSharesClient(endPoint, credential);

Response response = await sentShareClient.GetSentShareAsync("sentShareId");

Répertorier les partages envoyés

Les fournisseurs de données peuvent également récupérer une liste des partages envoyés qu’ils ont créés.

var credential = new DefaultAzureCredential();
var endPoint = new Uri("https://my-account-name.purview.azure.com/share");
var sentShareClient = new SentSharesClient(endPoint, credential);

List<BinaryData> response = await sentShareClient.GetAllSentSharesAsync("referenceName").ToEnumerableAsync();

Créer une invitation de partage à un utilisateur

Après avoir créé un partage envoyé, le fournisseur de données peut étendre les invitations aux consommateurs qui peuvent ensuite afficher les données partagées. Dans cet exemple, une invitation est étendue à un individu en spécifiant son adresse e-mail.

var credential = new DefaultAzureCredential();
var endPoint = new Uri("https://my-account-name.purview.azure.com/share");
var sentShareClient = new SentSharesClient(endPoint, credential);

var data = new
{
    invitationKind = "User",
    properties = new
    {
        TargetEmail = "receiver@microsoft.com",
        Notify = true,
    }
};

Response response = await sentShareClient.CreateSentShareInvitationAsync("sentShareId", "sentShareInvitationId", RequestContent.Create(data));

Créer une invitation de partage à un service

Les fournisseurs de données peuvent également étendre les invitations aux services ou aux applications en spécifiant l’ID de locataire et l’ID d’objet du service. L’ID d’objet utilisé pour envoyer une invitation à un service doit être l’ID d’objet associé à l’application d’entreprise (et non à l’inscription de l’application).

var credential = new DefaultAzureCredential();
var endPoint = new Uri("https://my-account-name.purview.azure.com/share");
var sentShareClient = new SentSharesClient(endPoint, credential);

var data = new
{
    invitationKind = "Service",
    properties = new
    {
        TargetActiveDirectoryId = "targetActiveDirectoryId",
        TargetObjectId = "targetObjectId",
    }
};

Response response = await sentShareClient.CreateSentShareInvitationAsync("sentShareId", "sentShareInvitationId", RequestContent.Create(data));

Obtenir une invitation de partage envoyé

Après avoir créé une invitation de partage envoyé, les fournisseurs de données peuvent la récupérer.

var credential = new DefaultAzureCredential();
var endPoint = new Uri("https://my-account-name.purview.azure.com/share");
var sentShareClient = new SentSharesClient(endPoint, credential);

Response response = await sentShareClient.GetSentShareInvitationAsync("sentShareId", "sentShareInvitationId");

Répertorier les invitations de partage envoyées

Les fournisseurs de données peuvent également récupérer une liste des invitations de partage envoyées qu’ils ont créées.

var credential = new DefaultAzureCredential();
var endPoint = new Uri("https://my-account-name.purview.azure.com/share");
var sentShareClient = new SentSharesClient(endPoint, credential);

List<BinaryData> sentShareInvitations = await sentShareClient.GetAllSentShareInvitationsAsync("sentShareId").ToEnumerableAsync();

Supprimer une invitation de partage envoyé

Les fournisseurs de données peuvent également récupérer une liste des invitations de partage envoyées qu’ils ont créées.

var credential = new DefaultAzureCredential();
var endPoint = new Uri("https://my-account-name.purview.azure.com/share");
var sentShareClient = new SentSharesClient(endPoint, credential);

Operation operation = await sentShareClient.DeleteSentShareInvitationAsync(WaitUntil.Completed, "sentShareId", "sentShareInvitationId");

Supprimer un partage envoyé

Un partage envoyé peut être supprimé par le fournisseur de données pour arrêter le partage de ses données avec tous les consommateurs de données.

var credential = new DefaultAzureCredential();
var endPoint = new Uri("https://my-account-name.purview.azure.com/share");
var sentShareClient = new SentSharesClient(endPoint, credential);

Operation operation = await sentShareClient.DeleteSentShareAsync(WaitUntil.Completed, "sentShareId");

Exemples de consommateurs de données

Les exemples de code suivants montrent comment les consommateurs de données peuvent utiliser le Kit de développement logiciel (SDK) Java Microsoft Azure pour le partage Purview afin de gérer leur activité de partage.

Créer un client de partage de réception

var credential = new DefaultAzureCredential();
var endPoint = new Uri("https://my-account-name.purview.azure.com/share");
var receivedSharesClient = new ReceivedSharesClient(endPoint, credential);

Répertorier les partages reçus détachés

Pour commencer à afficher les données partagées avec lui, un consommateur de données doit d’abord récupérer une liste de partages détachés reçus. Dans cette liste, ils peuvent identifier un partage reçu détaché à attacher.

var credential = new DefaultAzureCredential();
var endPoint = new Uri("https://my-account-name.purview.azure.com/share");
var receivedSharesClient = new ReceivedSharesClient(endPoint, credential);

List<BinaryData> createResponse = await receivedSharesClient.GetAllDetachedReceivedSharesAsync().ToEnumerableAsync();

Attacher un partage reçu

Une fois que le consommateur de données a identifié un partage reçu, il peut attacher le partage reçu à un emplacement où il peut accéder aux données partagées. Si le partage reçu est déjà attaché, les données partagées sont rendues accessibles au nouvel emplacement spécifié.

var credential = new DefaultAzureCredential();
var endPoint = new Uri("https://my-account-name.purview.azure.com/share");
var receivedSharesClient = new ReceivedSharesClient(endPoint, credential);

var data = new
{
    shareKind = "InPlace",
    properties = new
    {
        sink = new
        {
            storeKind = "AdlsGen2Account",
            storeReference = new
            {
                referenceName = "/subscriptions/suscriptionId/resourceGroups/resourceGroup/providers/Microsoft.Storage/storageAccounts/receiverStorageAccount",

                type = "ArmResourceReference"
            },
            properties = new
            {
                containerName = "containerName",
                folder = "folder",
                mountPath = "mountPath",
            }
        },
        displayName = "displayName",
    }
};

Operation<BinaryData> createResponse = await receivedSharesClient.CreateOrReplaceReceivedShareAsync(WaitUntil.Completed, "receivedShareId", RequestContent.Create(data));

Obtenir un partage reçu

Un consommateur de données peut récupérer un partage reçu individuellement.

var credential = new DefaultAzureCredential();
var endPoint = new Uri("https://my-account-name.purview.azure.com/share");
var receivedSharesClient = new ReceivedSharesClient(endPoint, credential);

Response operation = await receivedSharesClient.GetReceivedShareAsync("receivedShareId");

Répertorier les partages reçus joints

Les consommateurs de données peuvent également récupérer une liste de leurs partages reçus attachés.

var credential = new DefaultAzureCredential();
var endPoint = new Uri("https://my-account-name.purview.azure.com/share");
var receivedSharesClient = new ReceivedSharesClient(endPoint, credential);

List<BinaryData> createResponse = await receivedSharesClient.GetAllAttachedReceivedSharesAsync("referenceName").ToEnumerableAsync();

Supprimer un partage reçu

Les consommateurs de données peuvent également récupérer une liste de leurs partages reçus attachés.

var credential = new DefaultAzureCredential();
var endPoint = new Uri("https://my-account-name.purview.azure.com/share");
var receivedSharesClient = new ReceivedSharesClient(endPoint, credential);

Operation operation = await receivedSharesClient.DeleteReceivedShareAsync(WaitUntil.Completed, "receivedShareId");

Partager des exemples deouce

Les exemples de code suivants montrent comment utiliser le Kit de développement logiciel (SDK) Java Microsoft Azure pour le partage Purview pour afficher les ressources de partage. Une ressource de partage est la ressource sous-jacente à partir de laquelle un fournisseur partage des données ou la destination où un consommateur attache des données partagées avec eux.

Répertorier les ressources de partage

Une liste de ressources de partage peut être récupérée pour afficher toutes les ressources au sein d’un compte où des activités de partage ont eu lieu.

var credential = new DefaultAzureCredential();
var endPoint = new Uri("https://my-account-name.purview.azure.com/share");
var shareResourcesClient = new ShareResourcesClient(endPoint, credential);

List<BinaryData> createResponse = await shareResourcesClient.GetAllShareResourcesAsync().ToEnumerableAsync();

Résolution des problèmes

Configuration de la journalisation de la console

La façon la plus simple de voir les journaux consiste à activer la journalisation de la console. Pour créer un écouteur de journal du Kit de développement logiciel (SDK) Azure qui génère des messages dans la console, utilisez la méthode AzureEventSourceListener.CreateConsoleLogger.

// Setup a listener to monitor logged events.
using AzureEventSourceListener listener = AzureEventSourceListener.CreateConsoleLogger();

Pour en savoir plus sur les autres mécanismes de journalisation , consultez ici.

Étapes suivantes

Ce Kit de développement logiciel (SDK) client expose les opérations à l’aide de méthodes de protocole. Vous pouvez en savoir plus sur l’utilisation des clients sdk qui utilisent des méthodes de protocole dans notre documentation.

Contribution

Consultez la CONTRIBUTING.md pour plus d’informations sur la création, le test et la contribution à cette bibliothèque.

Ce projet accepte les contributions et les suggestions. La plupart des contributions vous demandent d’accepter un contrat de licence de contribution (CLA) déclarant que vous avez le droit de nous accorder, et que vous nous accordez réellement, les droits d’utilisation de votre contribution. Pour plus d’informations, visitez cla.microsoft.com.

Quand vous envoyez une demande de tirage (pull request), un bot CLA détermine automatiquement si vous devez fournir un contrat CLA et agrémenter la demande de tirage de façon appropriée (par exemple, avec une étiquette ou un commentaire). Suivez simplement les instructions fournies par le bot. Vous ne devez effectuer cette opération qu’une seule fois sur tous les dépôts utilisant notre contrat CLA.

Ce projet a adopté le Code de conduite Open Source de Microsoft. Pour plus d’informations, consultez les Questions fréquentes (FAQ) sur le code de conduite ou envoyez vos questions ou vos commentaires à opencode@microsoft.com.

Impressions