-
Notifications
You must be signed in to change notification settings - Fork 4.6k
/
ApiManagementAuthorizationServerPatch.cs
101 lines (95 loc) · 9.2 KB
/
ApiManagementAuthorizationServerPatch.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT License.
// <auto-generated/>
#nullable disable
using System.Collections.Generic;
using Azure.Core;
using Azure.ResourceManager.Models;
namespace Azure.ResourceManager.ApiManagement.Models
{
/// <summary> External OAuth authorization server settings. </summary>
public partial class ApiManagementAuthorizationServerPatch : ResourceData
{
/// <summary> Initializes a new instance of ApiManagementAuthorizationServerPatch. </summary>
public ApiManagementAuthorizationServerPatch()
{
AuthorizationMethods = new ChangeTrackingList<AuthorizationMethod>();
ClientAuthenticationMethods = new ChangeTrackingList<ClientAuthenticationMethod>();
TokenBodyParameters = new ChangeTrackingList<TokenBodyParameterContract>();
BearerTokenSendingMethods = new ChangeTrackingList<BearerTokenSendingMethod>();
GrantTypes = new ChangeTrackingList<GrantType>();
}
/// <summary> Initializes a new instance of ApiManagementAuthorizationServerPatch. </summary>
/// <param name="id"> The id. </param>
/// <param name="name"> The name. </param>
/// <param name="resourceType"> The resourceType. </param>
/// <param name="systemData"> The systemData. </param>
/// <param name="description"> Description of the authorization server. Can contain HTML formatting tags. </param>
/// <param name="authorizationMethods"> HTTP verbs supported by the authorization endpoint. GET must be always present. POST is optional. </param>
/// <param name="clientAuthenticationMethods"> Method of authentication supported by the token endpoint of this authorization server. Possible values are Basic and/or Body. When Body is specified, client credentials and other parameters are passed within the request body in the application/x-www-form-urlencoded format. </param>
/// <param name="tokenBodyParameters"> Additional parameters required by the token endpoint of this authorization server represented as an array of JSON objects with name and value string properties, i.e. {"name" : "name value", "value": "a value"}. </param>
/// <param name="tokenEndpoint"> OAuth token endpoint. Contains absolute URI to entity being referenced. </param>
/// <param name="doesSupportState"> If true, authorization server will include state parameter from the authorization request to its response. Client may use state parameter to raise protocol security. </param>
/// <param name="defaultScope"> Access token scope that is going to be requested by default. Can be overridden at the API level. Should be provided in the form of a string containing space-delimited values. </param>
/// <param name="bearerTokenSendingMethods"> Specifies the mechanism by which access token is passed to the API. </param>
/// <param name="resourceOwnerUsername"> Can be optionally specified when resource owner password grant type is supported by this authorization server. Default resource owner username. </param>
/// <param name="resourceOwnerPassword"> Can be optionally specified when resource owner password grant type is supported by this authorization server. Default resource owner password. </param>
/// <param name="displayName"> User-friendly authorization server name. </param>
/// <param name="clientRegistrationEndpoint"> Optional reference to a page where client or app registration for this authorization server is performed. Contains absolute URL to entity being referenced. </param>
/// <param name="authorizationEndpoint"> OAuth authorization endpoint. See http://tools.ietf.org/html/rfc6749#section-3.2. </param>
/// <param name="grantTypes"> Form of an authorization grant, which the client uses to request the access token. </param>
/// <param name="clientId"> Client or app id registered with this authorization server. </param>
/// <param name="clientSecret"> Client or app secret registered with this authorization server. This property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value. </param>
internal ApiManagementAuthorizationServerPatch(ResourceIdentifier id, string name, ResourceType resourceType, SystemData systemData, string description, IList<AuthorizationMethod> authorizationMethods, IList<ClientAuthenticationMethod> clientAuthenticationMethods, IList<TokenBodyParameterContract> tokenBodyParameters, string tokenEndpoint, bool? doesSupportState, string defaultScope, IList<BearerTokenSendingMethod> bearerTokenSendingMethods, string resourceOwnerUsername, string resourceOwnerPassword, string displayName, string clientRegistrationEndpoint, string authorizationEndpoint, IList<GrantType> grantTypes, string clientId, string clientSecret) : base(id, name, resourceType, systemData)
{
Description = description;
AuthorizationMethods = authorizationMethods;
ClientAuthenticationMethods = clientAuthenticationMethods;
TokenBodyParameters = tokenBodyParameters;
TokenEndpoint = tokenEndpoint;
DoesSupportState = doesSupportState;
DefaultScope = defaultScope;
BearerTokenSendingMethods = bearerTokenSendingMethods;
ResourceOwnerUsername = resourceOwnerUsername;
ResourceOwnerPassword = resourceOwnerPassword;
DisplayName = displayName;
ClientRegistrationEndpoint = clientRegistrationEndpoint;
AuthorizationEndpoint = authorizationEndpoint;
GrantTypes = grantTypes;
ClientId = clientId;
ClientSecret = clientSecret;
}
/// <summary> Description of the authorization server. Can contain HTML formatting tags. </summary>
public string Description { get; set; }
/// <summary> HTTP verbs supported by the authorization endpoint. GET must be always present. POST is optional. </summary>
public IList<AuthorizationMethod> AuthorizationMethods { get; }
/// <summary> Method of authentication supported by the token endpoint of this authorization server. Possible values are Basic and/or Body. When Body is specified, client credentials and other parameters are passed within the request body in the application/x-www-form-urlencoded format. </summary>
public IList<ClientAuthenticationMethod> ClientAuthenticationMethods { get; }
/// <summary> Additional parameters required by the token endpoint of this authorization server represented as an array of JSON objects with name and value string properties, i.e. {"name" : "name value", "value": "a value"}. </summary>
public IList<TokenBodyParameterContract> TokenBodyParameters { get; }
/// <summary> OAuth token endpoint. Contains absolute URI to entity being referenced. </summary>
public string TokenEndpoint { get; set; }
/// <summary> If true, authorization server will include state parameter from the authorization request to its response. Client may use state parameter to raise protocol security. </summary>
public bool? DoesSupportState { get; set; }
/// <summary> Access token scope that is going to be requested by default. Can be overridden at the API level. Should be provided in the form of a string containing space-delimited values. </summary>
public string DefaultScope { get; set; }
/// <summary> Specifies the mechanism by which access token is passed to the API. </summary>
public IList<BearerTokenSendingMethod> BearerTokenSendingMethods { get; }
/// <summary> Can be optionally specified when resource owner password grant type is supported by this authorization server. Default resource owner username. </summary>
public string ResourceOwnerUsername { get; set; }
/// <summary> Can be optionally specified when resource owner password grant type is supported by this authorization server. Default resource owner password. </summary>
public string ResourceOwnerPassword { get; set; }
/// <summary> User-friendly authorization server name. </summary>
public string DisplayName { get; set; }
/// <summary> Optional reference to a page where client or app registration for this authorization server is performed. Contains absolute URL to entity being referenced. </summary>
public string ClientRegistrationEndpoint { get; set; }
/// <summary> OAuth authorization endpoint. See http://tools.ietf.org/html/rfc6749#section-3.2. </summary>
public string AuthorizationEndpoint { get; set; }
/// <summary> Form of an authorization grant, which the client uses to request the access token. </summary>
public IList<GrantType> GrantTypes { get; }
/// <summary> Client or app id registered with this authorization server. </summary>
public string ClientId { get; set; }
/// <summary> Client or app secret registered with this authorization server. This property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value. </summary>
public string ClientSecret { get; set; }
}
}