Przypisanie użycia klienta platformy Azure

Przypisanie użycia klienta kojarzy użycie z zasobów platformy Azure w subskrypcjach klientów utworzonych podczas wdrażania twojego adresu IP jako partnera. Tworzenie tych skojarzeń w wewnętrznych systemach firmy Microsoft zapewnia większą wewnętrzną widoczność zużycia oprogramowania na platformie Azure. W przypadku ofert aplikacja systemu Azure na platformie handlowej ta funkcja śledzenia pomaga dopasować się do zespołów sprzedaży firmy Microsoft i uzyskać środki na programy partnerskie firmy Microsoft. Przypisanie użycia klienta nie ma zastosowania do ofert maszyn wirtualnych platformy Azure na platformie handlowej. Nie ma nic, co wydawca platformy handlowej musi wykonać w przypadku ofert maszyn wirtualnych, aby upewnić się, że ich użycie platformy Azure jest śledzone w subskrypcjach klientów końcowych.

Przypisanie użycia klienta obsługuje trzy opcje wdrażania:

  1. Szablony usługi Azure Resource Manager (typowe podstawy aplikacji platformy Azure, nazywane również platformą handlową jako "szablony rozwiązań" lub "aplikacje zarządzane"): partnerzy tworzą szablony usługi Resource Manager, aby zdefiniować infrastrukturę i konfigurację swoich rozwiązań platformy Azure. Szablon usługi Resource Manager umożliwia klientom wdrażanie zasobów rozwiązania w spójnym i powtarzalnym stanie.
  2. Interfejsy API usługi Azure Resource Manager: partnerzy mogą wywoływać interfejsy API usługi Resource Manager, aby wdrożyć szablon usługi Resource Manager lub bezpośrednio aprowizować usługi platformy Azure.
  3. Terraform: partnerzy mogą używać narzędzia Terraform do wdrażania szablonu usługi Resource Manager lub bezpośredniego wdrażania usług platformy Azure.

Zobacz Dodatkowe przypadki użycia w dalszej części tego artykułu, aby uzyskać informacje o użyciu klientów poza platformą handlową.

Ważne

  • Przypisanie użycia przez klienta nie jest przeznaczone do śledzenia pracy integratorów systemów, dostawców usług zarządzanych ani narzędzi przeznaczonych głównie do wdrażania zasobów platformy Azure i zarządzania nimi.

  • Przypisanie użycia klienta dotyczy nowych wdrożeń i nie obsługuje śledzenia zasobów, które zostały już wdrożone.

    • Nie wszystkie usługi platformy Azure są zgodne z przypisywaniem użycia przez klienta. Usługi Azure Kubernetes Services (AKS), VM Scale Sets i Azure Batch mają znane problemy, które powodują niedostateczne raportowanie użycia.
    • Dane użycia klienta dotyczące użycia platformy Azure nie są udostępniane zewnętrznie partnerom.

Aplikacje platformy Azure komercyjnej platformy Azure

Śledzenie użycia platformy Azure z aplikacji platformy Azure opublikowanych na platformie handlowej jest w dużej mierze automatyczne. Po przekazaniu szablonu usługi Resource Manager w ramach konfiguracji technicznej planu aplikacji platformy Azure w witrynie Marketplace Centrum partnerskie doda identyfikator śledzenia do odczytu przez usługę Azure Resource Manager.

Uwaga

Aby upewnić się, że użycie aplikacji jest dokładnie przypisywane w naszych systemach:

  1. Jeśli zdefiniujesz identyfikator śledzenia w typie zasobu Microsoft.Resources/deployment zmienną, zastąp zmienną identyfikatorem śledzenia widocznym w Centrum partnerskim na stronie Konfiguracja techniczna planu (zobacz Dodawanie identyfikatora GUID do szablonu usługi Resource Manager poniżej).
  2. Jeśli szablon usługi Resource Manager używa zasobów typu Microsoft.Resources/deployments do celów innych niż przypisanie użycia klienta, firma Microsoft nie będzie mogła dodać identyfikatora śledzenia autorstwa użycia klienta w Twoim imieniu. Dodaj nowy zasób typu Microsoft.Resources/deployments i dodaj identyfikator śledzenia widoczny w Centrum partnerskim na stronie Konfiguracja techniczna planu (zobacz Dodawanie identyfikatora GUID do szablonu usługi Resource Manager poniżej).

Jeśli używasz interfejsów API usługi Azure Resource Manager, musisz dodać swój identyfikator śledzenia zgodnie z poniższymi instrukcjami, aby przekazać go do usługi Azure Resource Manager, gdy kod wdraża zasoby. Ten identyfikator jest widoczny w Centrum partnerskim na stronie konfiguracji technicznej planu aplikacja systemu Azure.

Uwaga

W przypadku istniejących aplikacji platformy Azure migracja jednorazowa rozpoczęła się w marcu 2021 r. w celu zaktualizowania identyfikatorów śledzenia w konfiguracji technicznej każdego planu. Użycie z poprzednich wdrożeń tych ofert pozostanie śledzone w systemach firmy Microsoft.

Podczas aktualizowania ofert nie musisz już dodawać typu zasobu Microsoft.Resources/deployments w głównym pliku szablonu.

Inne przypadki użycia

Możesz użyć przypisania użycia klienta do śledzenia użycia platformy Azure rozwiązań, które nie są dostępne na platformie handlowej. Te rozwiązania zwykle znajdują się w repozytorium Szybki start, prywatnych repozytoriach GitHub lub pochodzą z 1:1 zaangażowania klientów, które tworzą trwały adres IP (na przykład wdrażalną i skalowalną aplikację).

Wymagane jest kilka ręcznych kroków:

  1. Utwórz co najmniej jeden identyfikator GUID do użycia jako identyfikatory śledzenia.
  2. Zarejestruj te identyfikatory GUID w Centrum partnerskim.
  3. Dodaj zarejestrowane identyfikatory GUID do ciągów agenta aplikacji platformy Azure i/lub użytkownika.

Tworzenie identyfikatorów GUID

W przeciwieństwie do identyfikatorów śledzenia tworzonych przez Centrum partnerskie w Twoim imieniu dla aplikacji platformy Azure na platformie handlowej, inne zastosowania przypisania użycia klienta wymagają utworzenia identyfikatora GUID do użycia jako identyfikatora śledzenia. Identyfikator GUID to unikatowy identyfikator odwołania, który ma 32 cyfry szesnastkowe. Aby utworzyć identyfikatory GUID do śledzenia, należy użyć generatora identyfikatora GUID, na przykład za pomocą programu PowerShell:

[guid]::NewGuid()

Należy utworzyć unikatowy identyfikator GUID dla każdego produktu i kanału dystrybucji. Można użyć jednego identyfikatora GUID dla wielu kanałów dystrybucji produktu, jeśli nie chcesz dzielić raportów. Raportowanie odbywa się według identyfikatora PartnerID i identyfikatora GUID.

Rejestrowanie identyfikatorów GUID

Identyfikatory GUID muszą być następnie zarejestrowane w Centrum partnerskim, aby można je było skojarzyć z Tobą jako partnerem:

  1. Zaloguj się do Centrum partnerskiego.

  2. Zarejestruj się jako wydawca platformy handlowej.

  3. Wybierz pozycję Ustawienia (ikona koła zębatego) w prawym górnym rogu, a następnie pozycję Ustawienia konta.

  4. Wybierz pozycję Identyfikatory profilów>organizacji Dodaj identyfikatory>GUID śledzenia.

  5. W polu IDENTYFIKATOR GUID wprowadź identyfikator GUID śledzenia. Wprowadź tylko identyfikator GUID bez prefiksu pid- . W polu Opis wprowadź nazwę lub opis rozwiązania.

  6. Aby zarejestrować więcej niż jeden identyfikator GUID, wybierz ponownie pozycję Dodaj identyfikator GUID śledzenia. Dodatkowe pola są wyświetlane na stronie.

  7. Wybierz pozycję Zapisz.

Dodawanie identyfikatora GUID do szablonu usługi Resource Manager

Aby dodać zarejestrowany identyfikator GUID do szablonu usługi Resource Manager, wprowadź jedną modyfikację głównego pliku szablonu:

  1. Otwórz szablon usługi Resource Manager.

  2. Dodaj nowy zasób typu Microsoft.Resources/deployments w głównym pliku szablonu. Zasób musi znajdować się tylko w pliku mainTemplate.json lub azuredeploy.json , a nie w żadnych szablonach zagnieżdżonych ani połączonych.

  3. Wprowadź wartość identyfikatora GUID po prefiksie pid- jako nazwę zasobu. Jeśli na przykład identyfikator GUID to eb7927c8-dd66-43e1-b0cf-c346a422063, nazwa zasobu będzie pid-eb7927c8-dd66-43e1-b0cf-c346a422063. Przykład:

{ // add this resource to the resources section in the mainTemplate.json
    "apiVersion": "2020-06-01",
    "name": "pid-XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX", // use your generated GUID here
    "type": "Microsoft.Resources/deployments",
    "properties": {
        "mode": "Incremental",
        "template": {
            "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
            "contentVersion": "1.0.0.0",
            "resources": []
        }
    }
} // remove all comments from the file when complete
  1. Sprawdź szablon pod kątem błędów.

  2. Ponownie opublikuj szablon w odpowiednich repozytoriach.

  3. Sprawdź powodzenie identyfikatora GUID we wdrożeniu szablonu.

Napiwek

Aby uzyskać więcej informacji na temat tworzenia i publikowania szablonów usługi Resource Manager, zobacz: tworzenie i wdrażanie pierwszego szablonu usługi Resource Manager.

Weryfikowanie wdrożeń śledzonych przy użyciu identyfikatora GUID

Po zmodyfikowaniu szablonu i uruchomieniu wdrożenia testowego użyj następującego skryptu programu PowerShell, aby pobrać wdrożone i oznakowane zasoby.

Możesz użyć skryptu, aby sprawdzić, czy identyfikator GUID został pomyślnie dodany do szablonu usługi Resource Manager. Skrypt nie ma zastosowania do wdrożeń interfejsu API usługi Resource Manager ani programu Terraform.

Zaloguj się do Azure. Wybierz subskrypcję z wdrożeniem, które chcesz zweryfikować przed uruchomieniem skryptu. Uruchom skrypt w kontekście subskrypcji wdrożenia.

Identyfikator GUID (poniżej o nazwie "deploymentName") i nazwa resourceGroupName wdrożenia są wymaganymi parametrami.

Oryginalny skrypt Verify-DeploymentGuid można pobrać w witrynie GitHub.

Param(
    [string][Parameter(Mandatory=$true)]$deploymentName, # the full name of the deployment, e.g. pid-XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX
    [string][Parameter(Mandatory=$true)]$resourceGroupName
)

# Get the correlationId of the named deployment
$correlationId = (Get-AzResourceGroupDeployment -ResourceGroupName $resourceGroupName -Name "$deploymentName").correlationId

# Find all deployments with that correlationId
$deployments = Get-AzResourceGroupDeployment -ResourceGroupName $resourceGroupName | Where-Object{$_.correlationId -eq $correlationId}

# Find all deploymentOperations in all deployments with that correlationId as PowerShell doesn't surface outputResources on the deployment or correlationId on the deploymentOperation

foreach ($deployment in $deployments){
    # Get deploymentOperations by deploymentName
    # then the resourceIds for each resource
    ($deployment | Get-AzResourceGroupDeploymentOperation | Where-Object{$_.targetResource -notlike "*Microsoft.Resources/deployments*"}).TargetResource
}

Powiadamianie klientów

Partnerzy powinni poinformować swoich klientów o wdrożeniach korzystających z przypisywania użycia przez klientów. Poniższe przykłady obejmują zawartość, której można użyć do powiadamiania klientów o tych wdrożeniach. W przykładach zastąp ciąg <PARTNER> nazwą firmy. Partnerzy powinni zapewnić, że powiadomienia są zgodne z zasadami prywatności i zbierania danych, w tym opcjami, które mają zostać wykluczeni ze śledzenia.

Powiadomienie dotyczące wdrożeń szablonów usługi Resource Manager

Podczas wdrażania tego szablonu firma Microsoft może zidentyfikować instalację oprogramowania PARTNERSKIEgo <> z wdrożonymi zasobami platformy Azure. Firma Microsoft może skorelować te zasoby używane do obsługi oprogramowania. Firma Microsoft zbiera te informacje w celu zapewnienia najlepszych doświadczeń ze swoimi produktami i prowadzenia działalności. Dane są zbierane i podlegają zasadom ochrony prywatności firmy Microsoft znajdującym się w https://www.microsoft.com/trustcenterlokalizacji .

Powiadomienie dotyczące wdrożeń zestawu SDK lub interfejsu API

Podczas wdrażania <oprogramowania PARTNERSKIEgo> firma Microsoft może zidentyfikować instalację oprogramowania PARTNERSKIEgo <> z wdrożonymi zasobami platformy Azure. Firma Microsoft może skorelować te zasoby używane do obsługi oprogramowania. Firma Microsoft zbiera te informacje w celu zapewnienia najlepszych doświadczeń ze swoimi produktami i prowadzenia działalności. Dane są zbierane i podlegają zasadom ochrony prywatności firmy Microsoft znajdującym się w https://www.microsoft.com/trustcenterlokalizacji .

Korzystanie z interfejsów API usługi Resource Manager

W niektórych przypadkach można wykonywać wywołania bezpośrednio względem interfejsów API REST usługi Resource Manager w celu wdrożenia usług platformy Azure. pomoc techniczna platformy Azure wielu zestawów SDK w celu włączenia tych wywołań. Możesz użyć jednego z zestawów SDK lub wywołać interfejsy API REST bezpośrednio w celu wdrożenia zasobów.

Aby włączyć przypisanie użycia klienta, podczas projektowania wywołań interfejsu API dołącz identyfikator śledzenia w nagłówku agenta użytkownika w żądaniu. Sformatuj ciąg przy użyciu prefiksu pid- . Przykłady:

//Commercial Marketplace Azure app
pid-contoso-myoffer-partnercenter //copy the tracking ID exactly as it appears in Partner Center

//Other use cases
pid-b6addd8f-5ff4-4fc0-a2b5-0ec7861106c4 //enter your GUID after "pid-"

Ważne

Jeśli używasz interfejsów API usługi Resource Manager z aplikacją platformy Azure na komercyjnej platformie handlowej, użyj identyfikatora śledzenia podanego w Centrum partnerskim. NIE używaj identyfikatora GUID.

Różne zestawy SDK współdziałają z interfejsami API usługi Resource Manager w inny sposób i będą wymagały pewnych różnic w kodzie. W poniższych przykładach przedstawiono podejście niekomercyjne na platformie handlowej przy użyciu identyfikatora GUID i omówiono różne bardziej popularne zestawy SDK platformy Azure.

Przykład: zestaw PYTHON SDK

W przypadku języka Python użyj atrybutu config . Atrybut można dodać tylko do agenta UserAgent. Przykład:

client = azure.mgmt.servicebus.ServiceBusManagementClient(**parameters)
client.config.add_user_agent("pid-b6addd8f-5ff4-4fc0-a2b5-0ec7861106c4")

Ważne

Dodaj atrybut dla każdego klienta. Nie ma globalnej konfiguracji statycznej. Możesz oznaczyć fabrykę klienta, aby upewnić się, że każdy klient śledzi. Aby uzyskać więcej informacji, zobacz ten przykład fabryki klienta w witrynie GitHub.

Przykład: zestaw .NET SDK

W przypadku platformy .NET upewnij się, że ustawiono agenta użytkownika. Użyj biblioteki Microsoft.Azure.Management.Fluent , aby ustawić agenta użytkownika przy użyciu następującego kodu (na przykład w języku C#):

var azure = Microsoft.Azure.Management.Fluent.Azure
    .Configure()
    // Add your pid in the user agent header
    .WithUserAgent("pid-XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX", String.Empty) 
    .Authenticate(/* Credentials created via Microsoft.Azure.Management.ResourceManager.Fluent.SdkContext.AzureCredentialsFactory */)
    .WithSubscription("<subscription ID>");

Ważne

Od czerwca 2023 r. najnowsza wersja zestawu .NET SDK Centrum partnerskiego 3.4.0 jest teraz archiwizowana. Możesz pobrać wersję zestawu SDK z usługi GitHub wraz z plikiem readme zawierającym przydatne informacje.

Zachęcamy partnerów do dalszego korzystania z interfejsów API REST Centrum partnerskiego.

Przykład: Azure PowerShell

W przypadku wdrażania zasobów za pomocą programu Azure PowerShell dołącz identyfikator GUID przy użyciu tej metody:

[Microsoft.Azure.Common.Authentication.AzureSession]::ClientFactory.AddUserAgent("pid-eb7927c8-dd66-43e1-b0cf-c346a422063")

Uwaga

Do interakcji z platformą Azure zalecamy używanie modułu Azure Az w programie PowerShell. Zobacz Instalowanie programu Azure PowerShell, aby rozpocząć. Aby dowiedzieć się, jak przeprowadzić migrację do modułu Az PowerShell, zobacz Migracja programu Azure PowerShell z modułu AzureRM do modułu Az.

Przykład: interfejs wiersza polecenia platformy Azure

Gdy używasz interfejsu wiersza polecenia platformy Azure do dołączania identyfikatora GUID, ustaw zmienną środowiskową AZURE_HTTP_USER_AGENT w zakresie skryptu. Można również ustawić zmienną globalnie dla zakresu powłoki:

export AZURE_HTTP_USER_AGENT='pid-eb7927c8-dd66-43e1-b0cf-c346a422063'

Aby uzyskać więcej informacji, zobacz Zestaw Azure SDK dla języka Go.

Korzystanie z narzędzia Terraform

Obsługa narzędzia Terraform jest dostępna za pośrednictwem wersji 1.21.0 dostawcy platformy Azure: https://github.com/terraform-providers/terraform-provider-azurerm/blob/master/CHANGELOG.md#1210-january-11-2019. Dotyczy to wszystkich partnerów, którzy wdrażają swoje rozwiązanie za pośrednictwem programu Terraform i wszystkich zasobów wdrożonych i mierzonych przez dostawcę platformy Azure (wersja 1.21.0 lub nowsza).

Dostawca platformy Azure dla narzędzia Terraform dodał nowe pole opcjonalne o nazwie partner_id służące do określania identyfikatora GUID śledzenia używanego dla rozwiązania. Wartość tego pola można również uzyskać ze zmiennej środowiskowej ARM_PARTNER_ID .

provider "azurerm" {
          subscription_id = "xxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
          client_id = "xxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
          ……
          # new stuff for ISV attribution
          partner_id = "xxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"}

Ważne

Jeśli używasz programu Terraform z aplikacją platformy Azure na platformie handlowej, użyj całego identyfikatora śledzenia podanego w Centrum partnerskim. NIE używaj identyfikatora GUID.

Uzyskaj pomoc techniczną

Dowiedz się więcej o opcjach pomocy technicznej na platformie handlowej na stronie Pomoc techniczna dla programu platformy handlowej w Centrum partnerskim.

Jak przesłać wniosek o konsultacje techniczne

  1. Odwiedź stronę Partner Technical Services.
  2. Wybierz pozycję Infrastruktura chmury i zarządzanie , aby wyświetlić podróż techniczną.
  3. Wybierz pozycję Usługi>wdrażania Prześlij żądanie.
  4. Zaloguj się przy użyciu konta msA (microsoft AI Cloud Partner Program) lub identyfikatora Microsoft Entra ID (konto pulpitu nawigacyjnego partnera).
  5. Ukończ/przejrzyj informacje kontaktowe w formularzu, który zostanie otwarty. Szczegóły konsultacji mogą być wstępnie wypełnione lub mogą istnieć opcje listy rozwijanej.
  6. Wprowadź tytuł i szczegółowy opis problemu.
  7. Wybierz Prześlij.

Wyświetl instrukcje krok po kroku z zrzutami ekranu na stronie Using Technical Presales and Deployment Services (Korzystanie z technicznych usług przedsprzedażowych i wdrożeniowych).

Skontaktuje się z Tobą konsultant techniczny partnera firmy Microsoft w celu skonfigurowania połączenia w celu określenia zakresu Twoich potrzeb.

Często zadawane pytania

Czy po dodaniu identyfikatora śledzenia można go zmienić?

Identyfikatory śledzenia aplikacji platformy Azure na platformie handlowej są zarządzane automatycznie przez Centrum partnerskie. Klient może jednak pobrać szablon i zmienić lub usunąć identyfikator śledzenia. Partnerzy powinni aktywnie opisywać rolę identyfikatora śledzenia dla swoich klientów, aby zapobiec usunięciu lub edycji. Zmiana identyfikatora śledzenia dotyczy tylko nowych wdrożeń i zasobów, a nie istniejących.

Czy mogę śledzić szablony wdrożone z repozytorium innego niż Microsoft, takiego jak GitHub?

Tak, o ile identyfikator śledzenia jest obecny podczas wdrażania szablonu, użycie jest śledzone. Aby zachować skojarzenie między tobą jako wydawcą i szablonem wdrożonym z repozytorium innego niż Microsoft, najpierw pobierz kopię opublikowanego szablonu (który będzie zawierać identyfikator śledzenia) z oferty komercyjnej na platformie handlowej w witrynie Azure Portal. Opublikuj wersję w usłudze GitHub lub w innym repozytorium innym niż Microsoft.

Jeśli szablon nie znajduje się na liście na komercyjnej platformie handlowej i zawiera zarejestrowany identyfikator GUID, upewnij się, że identyfikator GUID jest obecny w wersji publikowanej w usłudze GitHub lub w innym repozytorium innym niż Microsoft.

Czy firma Microsoft udostępnia partnerom dane autorstwa użycia klienta?

L.p. Firma Microsoft nie udostępnia danych użycia platformy Azure śledzonych zewnętrznie za pośrednictwem przypisania użycia klienta z partnerami.

Czy klienci otrzymują raportowanie autorstwa użycia klienta?

L.p. Klienci mogą śledzić użycie wszystkich zasobów lub grup zasobów w witrynie Azure Portal. Klienci nie widzą użycia określonego przez identyfikator śledzenia autorstwa użycia klienta.

Przypisywanie użycia przez klienta to mechanizm kojarzenia użycia platformy Azure z powtarzalnym, wdrażalnym adresem IP partnera — tworząc skojarzenie w czasie wdrażania. DPOR i PAL mają na celu skojarzenie partnera konsultingowego (integratora systemów) lub zarządzania (zarządzanego dostawcy usług) z odpowiednim śladem platformy Azure klienta przez czas, gdy partner jest zaangażowany w klienta.