Creare un selfServePolicy
Questo articolo illustra come creare un nuovo criterio self-service.
Prerequisiti
- Credenziali descritte in Autenticazione del Centro per i partner. Questo scenario supporta l'autenticazione con le credenziali application+user.
C#
Creare un criterio self-service:
- Chiamare il metodo IAggregatePartner.SelfServePolicies.Create o IAggregatePartner.SelfServePolicies.CreateAsync con le informazioni sui criteri self-service.
// IAggregatePartner partnerOperations;
string customerIdAsEntity;
var selfServePolicy = new SelfServePolicy
{
SelfServeEntity = new SelfServeEntity
{
SelfServeEntityType = "customer",
TenantID = customerIdAsEntity,
},
Grantor = new Grantor
{
GrantorType = "billToPartner",
TenantID = partnerIdAsGrantor,
},
Permissions = new Permission[]
{
new Permission
{
Action = "Purchase",
Resource = "AzureReservedInstances",
},
},
{
new Permission
{
Action = "Purchase",
Resource = "AzureSavingsPlan",
},
},
};
// All the operations executed on this partner operation instance will share the same correlation Id but will differ in request Id
IPartner scopedPartnerOperations = partnerOperations.With(RequestContextFactory.Instance.Create(Guid.NewGuid()));
// creates the self-serve policy
SelfServePolicy createdSelfServePolicy = scopedPartnerOperations.selfServePolicies.Create(selfServePolicy);
Per un esempio, vedere quanto segue:
- Esempio: App di test della console
- Progetto: PartnerSDK.FeatureSamples
- Classe: CreateSelfServePolicies.cs
Richiesta REST
Sintassi della richiesta
Metodo | URI richiesta |
---|---|
POST | {baseURL}/v1/SelfServePolicy HTTP/1.1 |
Intestazioni della richiesta
- Sono necessari un ID richiesta e un ID di correlazione.
- Per altre informazioni, vedi Intestazioni REST del Centro per i partner.
Testo della richiesta
Questa tabella descrive le proprietà necessarie nel corpo della richiesta.
Nome | Tipo | Descrizione |
---|---|---|
SelfServePolicy | object | Informazioni sui criteri self-service. |
SelfServePolicy
Questa tabella descrive i campi minimi necessari dalla risorsa SelfServePolicy necessaria per creare un nuovo criterio self-service.
Proprietà | Type | Descrizione |
---|---|---|
SelfServeEntity | SelfServeEntity | Entità self-service concessa all'accesso. |
Utente che concede le autorizzazioni | Utente che concede le autorizzazioni | Grantor che concede l'accesso. |
Autorizzazioni | Matrice di autorizzazioni | Matrice di risorse di autorizzazione . |
Esempio di richiesta
POST https://api.partnercenter.microsoft.com/v1/SelfServePolicy HTTP/1.1
Authorization: Bearer <token>
Accept: application/json
MS-RequestId: 94e4e214-6b06-4fb7-96d1-94d559f9b47f
MS-CorrelationId: ab993325-1605-4cf4-bac4-fb584142a31b
X-Locale: en-US
Content-Type: application/json
Host: api.partnercenter.microsoft.com
Content-Length: 789
Expect: 100-continue
Connection: Keep-Alive
{
"selfServeEntity": {
"selfServeEntityType": "customer",
"tenantID": "0431a72c-7d8a-4393-b25e-ef63f5efb415"
},
"grantor": {
"grantorType": "billToPartner",
"tenantID": "634f6379-ad54-449b-9821-564f737158ab"
},
"permissions": [
{
"resource": "AzureReservedInstances",
"action": "Purchase"
},
{
"resource": "AzureSavingsPlan",
"action": "Purchase"
}
]
}
Risposta REST
In caso di esito positivo, questa API restituisce una risorsa SelfServePolicy per i nuovi criteri self-service.
Codici di errore e di esito della risposta
Ogni risposta viene fornita con un codice di stato HTTP che ne indica l'esito e con informazioni di debug aggiuntive. Usa uno strumento di traccia di rete per leggere il codice, il tipo di errore e parametri aggiuntivi. Per l'elenco completo, vedi Codici di errore REST del Centro per i partner.
Questo metodo restituisce i codici di errore seguenti:
Codice di stato HTTP | Codice di errore | Descrizione |
---|---|---|
409 | 600041 | I criteri self-service esistono già. |
Esempio di risposta
HTTP/1.1 201 Created
Content-Length: 834
Content-Type: application/json; charset=utf-8
MS-CorrelationId: ab993325-1605-4cf4-bac4-fb584142a31b
MS-RequestId: 94e4e214-6b06-4fb7-96d1-94d559f9b47f
Date: Tue, 14 Feb 2017 20:06:02 GMT
{
"id": "634f6379-ad54-449b-9821-564f737158ab_0431a72c-7d8a-4393-b25e-ef63f5efb415",
"selfServeEntity": {
"selfServeEntityType": "customer",
"tenantID": "0431a72c-7d8a-4393-b25e-ef63f5efb415"
},
"grantor": {
"grantorType": "billToPartner",
"tenantID": "634f6379-ad54-449b-9821-564f737158ab"
},
"permissions": [
{
"resource": "AzureReservedInstances",
"action": "Purchase"
},
{
"resource": "AzureSavingsPlan",
"action": "Purchase"
}
],
"attributes": {
"etag": "\"933523d1-3f63-4fc3-8789-5e21c02cdaed\"",
"objectType": "SelfServePolicy"
}
}
Commenti e suggerimenti
https://aka.ms/ContentUserFeedback.
Presto disponibile: Nel corso del 2024 verranno gradualmente disattivati i problemi di GitHub come meccanismo di feedback per il contenuto e ciò verrà sostituito con un nuovo sistema di feedback. Per altre informazioni, vedereInvia e visualizza il feedback per