SelfServePolicy oluşturma

Bu makalede, yeni bir self servis ilkesinin nasıl oluşturulacağı açıklanmaktadır.

Önkoşullar

C#

Self Servis ilkesi oluşturun:

  1. Self Servis ilke bilgileriyle ıaggregatepartner. SelfServePolicies. Create veya ıaggregatepartner. SelfServePolicies. createasync metodunu çağırın.
// 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",
        },
    },
};

// 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);

Bir örnek için aşağıdakilere bakın:

REST isteği

İstek sözdizimi

Yöntem İstek URI'si
YAYINLA {BaseUrl}/v1/SelfServePolicy http/1.1

İstek üst bilgileri

İstek gövdesi

Bu tabloda, istek gövdesinde gereken özellikler açıklanmaktadır.

Ad Tür Description
SelfServePolicy object Self Servis ilke bilgileri.

SelfServePolicy

Bu tabloda, yeni bir self servis ilkesi oluşturmak için gereken SelfServePolicy kaynağından gerekli en düşük alan açıklanmaktadır.

Özellik Tür Description
SelfServeEntity SelfServeEntity Erişim izni verilen self servis varlığı.
Verenin Grant izni Verenin Grant izni Erişim veren granör.
İzinler Izin dizisi İzin kaynakları dizisi.

İstek örneği

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"
    }
}

REST yanıtı

Başarılı olursa, bu API yeni self servis ilkesi için bir SelfServePolicy kaynağı döndürür.

Yanıt başarısı ve hata kodları

Her yanıt başarı veya başarısızlık ve ek hata ayıklama bilgilerini gösteren bir HTTP durum kodu ile gelir. Bu kodu, hata türünü ve ek parametreleri okumak için bir ağ izleme aracı kullanın. Tam liste için bkz. Iş ortağı MERKEZI Rest hata kodları.

Bu yöntem aşağıdaki hata kodlarını döndürür:

HTTP durum kodu Hata kodu Description
409 600041 Self Servis İlkesi zaten var.

Yanıt örneği

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"
    }],
    "attributes": {
        "etag": "\"933523d1-3f63-4fc3-8789-5e21c02cdaed\"",
        "objectType": "SelfServePolicy"
    }
}