This repository has been archived by the owner on Mar 11, 2021. It is now read-only.
/
getApiManagementService.go
94 lines (89 loc) · 7.9 KB
/
getApiManagementService.go
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
// *** WARNING: this file was generated by the Pulumi SDK Generator. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
package v20200601preview
import (
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"
)
func LookupApiManagementService(ctx *pulumi.Context, args *LookupApiManagementServiceArgs, opts ...pulumi.InvokeOption) (*LookupApiManagementServiceResult, error) {
var rv LookupApiManagementServiceResult
err := ctx.Invoke("azure-nextgen:apimanagement/v20200601preview:getApiManagementService", args, &rv, opts...)
if err != nil {
return nil, err
}
return &rv, nil
}
type LookupApiManagementServiceArgs struct {
// The name of the resource group.
ResourceGroupName string `pulumi:"resourceGroupName"`
// The name of the API Management service.
ServiceName string `pulumi:"serviceName"`
}
// A single API Management service resource in List or Get response.
type LookupApiManagementServiceResult struct {
// Additional datacenter locations of the API Management service.
AdditionalLocations []AdditionalLocationResponse `pulumi:"additionalLocations"`
// Control Plane Apis version constraint for the API Management service.
ApiVersionConstraint *ApiVersionConstraintResponse `pulumi:"apiVersionConstraint"`
// List of Certificates that need to be installed in the API Management service. Max supported certificates that can be installed is 10.
Certificates []CertificateConfigurationResponse `pulumi:"certificates"`
// Creation UTC date of the API Management service.The date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 standard.
CreatedAtUtc string `pulumi:"createdAtUtc"`
// Custom properties of the API Management service.</br>Setting `Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TripleDes168` will disable the cipher TLS_RSA_WITH_3DES_EDE_CBC_SHA for all TLS(1.0, 1.1 and 1.2).</br>Setting `Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11` can be used to disable just TLS 1.1.</br>Setting `Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10` can be used to disable TLS 1.0 on an API Management service.</br>Setting `Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls11` can be used to disable just TLS 1.1 for communications with backends.</br>Setting `Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls10` can be used to disable TLS 1.0 for communications with backends.</br>Setting `Microsoft.WindowsAzure.ApiManagement.Gateway.Protocols.Server.Http2` can be used to enable HTTP2 protocol on an API Management service.</br>Not specifying any of these properties on PATCH operation will reset omitted properties' values to their defaults. For all the settings except Http2 the default value is `True` if the service was created on or before April 1st 2018 and `False` otherwise. Http2 setting's default value is `False`.</br></br>You can disable any of next ciphers by using settings `Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.[cipher_name]`: TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA, TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA, TLS_RSA_WITH_AES_128_GCM_SHA256, TLS_RSA_WITH_AES_256_CBC_SHA256, TLS_RSA_WITH_AES_128_CBC_SHA256, TLS_RSA_WITH_AES_256_CBC_SHA, TLS_RSA_WITH_AES_128_CBC_SHA. For example, `Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TLS_RSA_WITH_AES_128_CBC_SHA256`:`false`. The default value is `true` for them. Note: next ciphers can't be disabled since they are required by Azure CloudService internal components: TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384,TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256,TLS_RSA_WITH_AES_256_GCM_SHA384
CustomProperties map[string]string `pulumi:"customProperties"`
// DEveloper Portal endpoint URL of the API Management service.
DeveloperPortalUrl string `pulumi:"developerPortalUrl"`
// Property only valid for an Api Management service deployed in multiple locations. This can be used to disable the gateway in master region.
DisableGateway *bool `pulumi:"disableGateway"`
// Property only meant to be used for Consumption SKU Service. This enforces a client certificate to be presented on each request to the gateway. This also enables the ability to authenticate the certificate in the policy on the gateway.
EnableClientCertificate *bool `pulumi:"enableClientCertificate"`
// ETag of the resource.
Etag string `pulumi:"etag"`
// Gateway URL of the API Management service in the Default Region.
GatewayRegionalUrl string `pulumi:"gatewayRegionalUrl"`
// Gateway URL of the API Management service.
GatewayUrl string `pulumi:"gatewayUrl"`
// Custom hostname configuration of the API Management service.
HostnameConfigurations []HostnameConfigurationResponse `pulumi:"hostnameConfigurations"`
// Resource ID.
Id string `pulumi:"id"`
// Managed service identity of the Api Management service.
Identity *ApiManagementServiceIdentityResponse `pulumi:"identity"`
// Resource location.
Location string `pulumi:"location"`
// Management API endpoint URL of the API Management service.
ManagementApiUrl string `pulumi:"managementApiUrl"`
// Resource name.
Name string `pulumi:"name"`
// Email address from which the notification will be sent.
NotificationSenderEmail *string `pulumi:"notificationSenderEmail"`
// Publisher portal endpoint Url of the API Management service.
PortalUrl string `pulumi:"portalUrl"`
// Private Static Load Balanced IP addresses of the API Management service in Primary region which is deployed in an Internal Virtual Network. Available only for Basic, Standard, Premium and Isolated SKU.
PrivateIPAddresses []string `pulumi:"privateIPAddresses"`
// The current provisioning state of the API Management service which can be one of the following: Created/Activating/Succeeded/Updating/Failed/Stopped/Terminating/TerminationFailed/Deleted.
ProvisioningState string `pulumi:"provisioningState"`
// Public Static Load Balanced IP addresses of the API Management service in Primary region. Available only for Basic, Standard, Premium and Isolated SKU.
PublicIPAddresses []string `pulumi:"publicIPAddresses"`
// Publisher email.
PublisherEmail string `pulumi:"publisherEmail"`
// Publisher name.
PublisherName string `pulumi:"publisherName"`
// Undelete Api Management Service if it was previously soft-deleted. If this flag is specified and set to True all other properties will be ignored.
Restore *bool `pulumi:"restore"`
// SCM endpoint URL of the API Management service.
ScmUrl string `pulumi:"scmUrl"`
// SKU properties of the API Management service.
Sku ApiManagementServiceSkuPropertiesResponse `pulumi:"sku"`
// Resource tags.
Tags map[string]string `pulumi:"tags"`
// The provisioning state of the API Management service, which is targeted by the long running operation started on the service.
TargetProvisioningState string `pulumi:"targetProvisioningState"`
// Resource type for API Management resource is set to Microsoft.ApiManagement.
Type string `pulumi:"type"`
// Virtual network configuration of the API Management service.
VirtualNetworkConfiguration *VirtualNetworkConfigurationResponse `pulumi:"virtualNetworkConfiguration"`
// The type of VPN in which API Management service needs to be configured in. None (Default Value) means the API Management service is not part of any Virtual Network, External means the API Management deployment is set up inside a Virtual Network having an Internet Facing Endpoint, and Internal means that API Management deployment is setup inside a Virtual Network having an Intranet Facing Endpoint only.
VirtualNetworkType *string `pulumi:"virtualNetworkType"`
// A list of availability zones denoting where the resource needs to come from.
Zones []string `pulumi:"zones"`
}