gcp.compute.ManagedSslCertificate
Explore with Pulumi AI
An SslCertificate resource, used for HTTPS load balancing. This resource represents a certificate for which the certificate secrets are created and managed by Google.
For a resource where you provide the key, see the SSL Certificate resource.
To get more information about ManagedSslCertificate, see:
- API documentation
- How-to Guides
Warning: This resource should be used with extreme caution! Provisioning an SSL certificate is complex. Ensure that you understand the lifecycle of a certificate before attempting complex tasks like cert rotation automatically. This resource will “return” as soon as the certificate object is created, but post-creation the certificate object will go through a “provisioning” process. The provisioning process can complete only when the domain name for which the certificate is created points to a target pool which, itself, points at the certificate. Depending on your DNS provider, this may take some time, and migrating from self-managed certificates to Google-managed certificates may entail some downtime while the certificate provisions.
In conclusion: Be extremely cautious.
Example Usage
Managed Ssl Certificate Basic
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
const _default = new gcp.compute.ManagedSslCertificate("default", {
name: "test-cert",
managed: {
domains: ["sslcert.tf-test.club."],
},
});
const defaultHttpHealthCheck = new gcp.compute.HttpHealthCheck("default", {
name: "http-health-check",
requestPath: "/",
checkIntervalSec: 1,
timeoutSec: 1,
});
const defaultBackendService = new gcp.compute.BackendService("default", {
name: "backend-service",
portName: "http",
protocol: "HTTP",
timeoutSec: 10,
healthChecks: defaultHttpHealthCheck.id,
});
const defaultURLMap = new gcp.compute.URLMap("default", {
name: "url-map",
description: "a description",
defaultService: defaultBackendService.id,
hostRules: [{
hosts: ["sslcert.tf-test.club"],
pathMatcher: "allpaths",
}],
pathMatchers: [{
name: "allpaths",
defaultService: defaultBackendService.id,
pathRules: [{
paths: ["/*"],
service: defaultBackendService.id,
}],
}],
});
const defaultTargetHttpsProxy = new gcp.compute.TargetHttpsProxy("default", {
name: "test-proxy",
urlMap: defaultURLMap.id,
sslCertificates: [_default.id],
});
const defaultGlobalForwardingRule = new gcp.compute.GlobalForwardingRule("default", {
name: "forwarding-rule",
target: defaultTargetHttpsProxy.id,
portRange: "443",
});
import pulumi
import pulumi_gcp as gcp
default = gcp.compute.ManagedSslCertificate("default",
name="test-cert",
managed={
"domains": ["sslcert.tf-test.club."],
})
default_http_health_check = gcp.compute.HttpHealthCheck("default",
name="http-health-check",
request_path="/",
check_interval_sec=1,
timeout_sec=1)
default_backend_service = gcp.compute.BackendService("default",
name="backend-service",
port_name="http",
protocol="HTTP",
timeout_sec=10,
health_checks=default_http_health_check.id)
default_url_map = gcp.compute.URLMap("default",
name="url-map",
description="a description",
default_service=default_backend_service.id,
host_rules=[{
"hosts": ["sslcert.tf-test.club"],
"path_matcher": "allpaths",
}],
path_matchers=[{
"name": "allpaths",
"default_service": default_backend_service.id,
"path_rules": [{
"paths": ["/*"],
"service": default_backend_service.id,
}],
}])
default_target_https_proxy = gcp.compute.TargetHttpsProxy("default",
name="test-proxy",
url_map=default_url_map.id,
ssl_certificates=[default.id])
default_global_forwarding_rule = gcp.compute.GlobalForwardingRule("default",
name="forwarding-rule",
target=default_target_https_proxy.id,
port_range="443")
package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := compute.NewManagedSslCertificate(ctx, "default", &compute.ManagedSslCertificateArgs{
Name: pulumi.String("test-cert"),
Managed: &compute.ManagedSslCertificateManagedArgs{
Domains: pulumi.StringArray{
pulumi.String("sslcert.tf-test.club."),
},
},
})
if err != nil {
return err
}
defaultHttpHealthCheck, err := compute.NewHttpHealthCheck(ctx, "default", &compute.HttpHealthCheckArgs{
Name: pulumi.String("http-health-check"),
RequestPath: pulumi.String("/"),
CheckIntervalSec: pulumi.Int(1),
TimeoutSec: pulumi.Int(1),
})
if err != nil {
return err
}
defaultBackendService, err := compute.NewBackendService(ctx, "default", &compute.BackendServiceArgs{
Name: pulumi.String("backend-service"),
PortName: pulumi.String("http"),
Protocol: pulumi.String("HTTP"),
TimeoutSec: pulumi.Int(10),
HealthChecks: defaultHttpHealthCheck.ID(),
})
if err != nil {
return err
}
defaultURLMap, err := compute.NewURLMap(ctx, "default", &compute.URLMapArgs{
Name: pulumi.String("url-map"),
Description: pulumi.String("a description"),
DefaultService: defaultBackendService.ID(),
HostRules: compute.URLMapHostRuleArray{
&compute.URLMapHostRuleArgs{
Hosts: pulumi.StringArray{
pulumi.String("sslcert.tf-test.club"),
},
PathMatcher: pulumi.String("allpaths"),
},
},
PathMatchers: compute.URLMapPathMatcherArray{
&compute.URLMapPathMatcherArgs{
Name: pulumi.String("allpaths"),
DefaultService: defaultBackendService.ID(),
PathRules: compute.URLMapPathMatcherPathRuleArray{
&compute.URLMapPathMatcherPathRuleArgs{
Paths: pulumi.StringArray{
pulumi.String("/*"),
},
Service: defaultBackendService.ID(),
},
},
},
},
})
if err != nil {
return err
}
defaultTargetHttpsProxy, err := compute.NewTargetHttpsProxy(ctx, "default", &compute.TargetHttpsProxyArgs{
Name: pulumi.String("test-proxy"),
UrlMap: defaultURLMap.ID(),
SslCertificates: pulumi.StringArray{
_default.ID(),
},
})
if err != nil {
return err
}
_, err = compute.NewGlobalForwardingRule(ctx, "default", &compute.GlobalForwardingRuleArgs{
Name: pulumi.String("forwarding-rule"),
Target: defaultTargetHttpsProxy.ID(),
PortRange: pulumi.String("443"),
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Gcp = Pulumi.Gcp;
return await Deployment.RunAsync(() =>
{
var @default = new Gcp.Compute.ManagedSslCertificate("default", new()
{
Name = "test-cert",
Managed = new Gcp.Compute.Inputs.ManagedSslCertificateManagedArgs
{
Domains = new[]
{
"sslcert.tf-test.club.",
},
},
});
var defaultHttpHealthCheck = new Gcp.Compute.HttpHealthCheck("default", new()
{
Name = "http-health-check",
RequestPath = "/",
CheckIntervalSec = 1,
TimeoutSec = 1,
});
var defaultBackendService = new Gcp.Compute.BackendService("default", new()
{
Name = "backend-service",
PortName = "http",
Protocol = "HTTP",
TimeoutSec = 10,
HealthChecks = defaultHttpHealthCheck.Id,
});
var defaultURLMap = new Gcp.Compute.URLMap("default", new()
{
Name = "url-map",
Description = "a description",
DefaultService = defaultBackendService.Id,
HostRules = new[]
{
new Gcp.Compute.Inputs.URLMapHostRuleArgs
{
Hosts = new[]
{
"sslcert.tf-test.club",
},
PathMatcher = "allpaths",
},
},
PathMatchers = new[]
{
new Gcp.Compute.Inputs.URLMapPathMatcherArgs
{
Name = "allpaths",
DefaultService = defaultBackendService.Id,
PathRules = new[]
{
new Gcp.Compute.Inputs.URLMapPathMatcherPathRuleArgs
{
Paths = new[]
{
"/*",
},
Service = defaultBackendService.Id,
},
},
},
},
});
var defaultTargetHttpsProxy = new Gcp.Compute.TargetHttpsProxy("default", new()
{
Name = "test-proxy",
UrlMap = defaultURLMap.Id,
SslCertificates = new[]
{
@default.Id,
},
});
var defaultGlobalForwardingRule = new Gcp.Compute.GlobalForwardingRule("default", new()
{
Name = "forwarding-rule",
Target = defaultTargetHttpsProxy.Id,
PortRange = "443",
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.compute.ManagedSslCertificate;
import com.pulumi.gcp.compute.ManagedSslCertificateArgs;
import com.pulumi.gcp.compute.inputs.ManagedSslCertificateManagedArgs;
import com.pulumi.gcp.compute.HttpHealthCheck;
import com.pulumi.gcp.compute.HttpHealthCheckArgs;
import com.pulumi.gcp.compute.BackendService;
import com.pulumi.gcp.compute.BackendServiceArgs;
import com.pulumi.gcp.compute.URLMap;
import com.pulumi.gcp.compute.URLMapArgs;
import com.pulumi.gcp.compute.inputs.URLMapHostRuleArgs;
import com.pulumi.gcp.compute.inputs.URLMapPathMatcherArgs;
import com.pulumi.gcp.compute.TargetHttpsProxy;
import com.pulumi.gcp.compute.TargetHttpsProxyArgs;
import com.pulumi.gcp.compute.GlobalForwardingRule;
import com.pulumi.gcp.compute.GlobalForwardingRuleArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var default_ = new ManagedSslCertificate("default", ManagedSslCertificateArgs.builder()
.name("test-cert")
.managed(ManagedSslCertificateManagedArgs.builder()
.domains("sslcert.tf-test.club.")
.build())
.build());
var defaultHttpHealthCheck = new HttpHealthCheck("defaultHttpHealthCheck", HttpHealthCheckArgs.builder()
.name("http-health-check")
.requestPath("/")
.checkIntervalSec(1)
.timeoutSec(1)
.build());
var defaultBackendService = new BackendService("defaultBackendService", BackendServiceArgs.builder()
.name("backend-service")
.portName("http")
.protocol("HTTP")
.timeoutSec(10)
.healthChecks(defaultHttpHealthCheck.id())
.build());
var defaultURLMap = new URLMap("defaultURLMap", URLMapArgs.builder()
.name("url-map")
.description("a description")
.defaultService(defaultBackendService.id())
.hostRules(URLMapHostRuleArgs.builder()
.hosts("sslcert.tf-test.club")
.pathMatcher("allpaths")
.build())
.pathMatchers(URLMapPathMatcherArgs.builder()
.name("allpaths")
.defaultService(defaultBackendService.id())
.pathRules(URLMapPathMatcherPathRuleArgs.builder()
.paths("/*")
.service(defaultBackendService.id())
.build())
.build())
.build());
var defaultTargetHttpsProxy = new TargetHttpsProxy("defaultTargetHttpsProxy", TargetHttpsProxyArgs.builder()
.name("test-proxy")
.urlMap(defaultURLMap.id())
.sslCertificates(default_.id())
.build());
var defaultGlobalForwardingRule = new GlobalForwardingRule("defaultGlobalForwardingRule", GlobalForwardingRuleArgs.builder()
.name("forwarding-rule")
.target(defaultTargetHttpsProxy.id())
.portRange(443)
.build());
}
}
resources:
default:
type: gcp:compute:ManagedSslCertificate
properties:
name: test-cert
managed:
domains:
- sslcert.tf-test.club.
defaultTargetHttpsProxy:
type: gcp:compute:TargetHttpsProxy
name: default
properties:
name: test-proxy
urlMap: ${defaultURLMap.id}
sslCertificates:
- ${default.id}
defaultURLMap:
type: gcp:compute:URLMap
name: default
properties:
name: url-map
description: a description
defaultService: ${defaultBackendService.id}
hostRules:
- hosts:
- sslcert.tf-test.club
pathMatcher: allpaths
pathMatchers:
- name: allpaths
defaultService: ${defaultBackendService.id}
pathRules:
- paths:
- /*
service: ${defaultBackendService.id}
defaultBackendService:
type: gcp:compute:BackendService
name: default
properties:
name: backend-service
portName: http
protocol: HTTP
timeoutSec: 10
healthChecks: ${defaultHttpHealthCheck.id}
defaultHttpHealthCheck:
type: gcp:compute:HttpHealthCheck
name: default
properties:
name: http-health-check
requestPath: /
checkIntervalSec: 1
timeoutSec: 1
defaultGlobalForwardingRule:
type: gcp:compute:GlobalForwardingRule
name: default
properties:
name: forwarding-rule
target: ${defaultTargetHttpsProxy.id}
portRange: 443
Import
ManagedSslCertificate can be imported using any of these accepted formats:
projects/{{project}}/global/sslCertificates/{{name}}
{{project}}/{{name}}
{{name}}
When using the pulumi import
command, ManagedSslCertificate can be imported using one of the formats above. For example:
$ pulumi import gcp:compute/managedSslCertificate:ManagedSslCertificate default projects/{{project}}/global/sslCertificates/{{name}}
$ pulumi import gcp:compute/managedSslCertificate:ManagedSslCertificate default {{project}}/{{name}}
$ pulumi import gcp:compute/managedSslCertificate:ManagedSslCertificate default {{name}}
Create ManagedSslCertificate Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new ManagedSslCertificate(name: string, args?: ManagedSslCertificateArgs, opts?: CustomResourceOptions);
@overload
def ManagedSslCertificate(resource_name: str,
args: Optional[ManagedSslCertificateArgs] = None,
opts: Optional[ResourceOptions] = None)
@overload
def ManagedSslCertificate(resource_name: str,
opts: Optional[ResourceOptions] = None,
description: Optional[str] = None,
managed: Optional[ManagedSslCertificateManagedArgs] = None,
name: Optional[str] = None,
project: Optional[str] = None,
type: Optional[str] = None)
func NewManagedSslCertificate(ctx *Context, name string, args *ManagedSslCertificateArgs, opts ...ResourceOption) (*ManagedSslCertificate, error)
public ManagedSslCertificate(string name, ManagedSslCertificateArgs? args = null, CustomResourceOptions? opts = null)
public ManagedSslCertificate(String name, ManagedSslCertificateArgs args)
public ManagedSslCertificate(String name, ManagedSslCertificateArgs args, CustomResourceOptions options)
type: gcp:compute:ManagedSslCertificate
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
Parameters
- name string
- The unique name of the resource.
- args ManagedSslCertificateArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- resource_name str
- The unique name of the resource.
- args ManagedSslCertificateArgs
- The arguments to resource properties.
- opts ResourceOptions
- Bag of options to control resource's behavior.
- ctx Context
- Context object for the current deployment.
- name string
- The unique name of the resource.
- args ManagedSslCertificateArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args ManagedSslCertificateArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args ManagedSslCertificateArgs
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
Constructor example
The following reference example uses placeholder values for all input properties.
var managedSslCertificateResource = new Gcp.Compute.ManagedSslCertificate("managedSslCertificateResource", new()
{
Description = "string",
Managed = new Gcp.Compute.Inputs.ManagedSslCertificateManagedArgs
{
Domains = new[]
{
"string",
},
},
Name = "string",
Project = "string",
Type = "string",
});
example, err := compute.NewManagedSslCertificate(ctx, "managedSslCertificateResource", &compute.ManagedSslCertificateArgs{
Description: pulumi.String("string"),
Managed: &compute.ManagedSslCertificateManagedArgs{
Domains: pulumi.StringArray{
pulumi.String("string"),
},
},
Name: pulumi.String("string"),
Project: pulumi.String("string"),
Type: pulumi.String("string"),
})
var managedSslCertificateResource = new ManagedSslCertificate("managedSslCertificateResource", ManagedSslCertificateArgs.builder()
.description("string")
.managed(ManagedSslCertificateManagedArgs.builder()
.domains("string")
.build())
.name("string")
.project("string")
.type("string")
.build());
managed_ssl_certificate_resource = gcp.compute.ManagedSslCertificate("managedSslCertificateResource",
description="string",
managed={
"domains": ["string"],
},
name="string",
project="string",
type="string")
const managedSslCertificateResource = new gcp.compute.ManagedSslCertificate("managedSslCertificateResource", {
description: "string",
managed: {
domains: ["string"],
},
name: "string",
project: "string",
type: "string",
});
type: gcp:compute:ManagedSslCertificate
properties:
description: string
managed:
domains:
- string
name: string
project: string
type: string
ManagedSslCertificate Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.
The ManagedSslCertificate resource accepts the following input properties:
- Description string
- An optional description of this resource.
- Managed
Managed
Ssl Certificate Managed - Properties relevant to a managed certificate. These will be used if the
certificate is managed (as indicated by a value of
MANAGED
intype
). Structure is documented below. - Name string
- Name of the resource. Provided by the client when the resource is
created. The name must be 1-63 characters long, and comply with
RFC1035. Specifically, the name must be 1-63 characters long and match
the regular expression
a-z?
which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. These are in the same namespace as the managed SSL certificates. - Project string
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- Type string
- Enum field whose value is always
MANAGED
- used to signal to the API which type this is. Default value isMANAGED
. Possible values are:MANAGED
.
- Description string
- An optional description of this resource.
- Managed
Managed
Ssl Certificate Managed Args - Properties relevant to a managed certificate. These will be used if the
certificate is managed (as indicated by a value of
MANAGED
intype
). Structure is documented below. - Name string
- Name of the resource. Provided by the client when the resource is
created. The name must be 1-63 characters long, and comply with
RFC1035. Specifically, the name must be 1-63 characters long and match
the regular expression
a-z?
which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. These are in the same namespace as the managed SSL certificates. - Project string
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- Type string
- Enum field whose value is always
MANAGED
- used to signal to the API which type this is. Default value isMANAGED
. Possible values are:MANAGED
.
- description String
- An optional description of this resource.
- managed
Managed
Ssl Certificate Managed - Properties relevant to a managed certificate. These will be used if the
certificate is managed (as indicated by a value of
MANAGED
intype
). Structure is documented below. - name String
- Name of the resource. Provided by the client when the resource is
created. The name must be 1-63 characters long, and comply with
RFC1035. Specifically, the name must be 1-63 characters long and match
the regular expression
a-z?
which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. These are in the same namespace as the managed SSL certificates. - project String
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- type String
- Enum field whose value is always
MANAGED
- used to signal to the API which type this is. Default value isMANAGED
. Possible values are:MANAGED
.
- description string
- An optional description of this resource.
- managed
Managed
Ssl Certificate Managed - Properties relevant to a managed certificate. These will be used if the
certificate is managed (as indicated by a value of
MANAGED
intype
). Structure is documented below. - name string
- Name of the resource. Provided by the client when the resource is
created. The name must be 1-63 characters long, and comply with
RFC1035. Specifically, the name must be 1-63 characters long and match
the regular expression
a-z?
which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. These are in the same namespace as the managed SSL certificates. - project string
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- type string
- Enum field whose value is always
MANAGED
- used to signal to the API which type this is. Default value isMANAGED
. Possible values are:MANAGED
.
- description str
- An optional description of this resource.
- managed
Managed
Ssl Certificate Managed Args - Properties relevant to a managed certificate. These will be used if the
certificate is managed (as indicated by a value of
MANAGED
intype
). Structure is documented below. - name str
- Name of the resource. Provided by the client when the resource is
created. The name must be 1-63 characters long, and comply with
RFC1035. Specifically, the name must be 1-63 characters long and match
the regular expression
a-z?
which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. These are in the same namespace as the managed SSL certificates. - project str
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- type str
- Enum field whose value is always
MANAGED
- used to signal to the API which type this is. Default value isMANAGED
. Possible values are:MANAGED
.
- description String
- An optional description of this resource.
- managed Property Map
- Properties relevant to a managed certificate. These will be used if the
certificate is managed (as indicated by a value of
MANAGED
intype
). Structure is documented below. - name String
- Name of the resource. Provided by the client when the resource is
created. The name must be 1-63 characters long, and comply with
RFC1035. Specifically, the name must be 1-63 characters long and match
the regular expression
a-z?
which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. These are in the same namespace as the managed SSL certificates. - project String
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- type String
- Enum field whose value is always
MANAGED
- used to signal to the API which type this is. Default value isMANAGED
. Possible values are:MANAGED
.
Outputs
All input properties are implicitly available as output properties. Additionally, the ManagedSslCertificate resource produces the following output properties:
- Certificate
Id int - The unique identifier for the resource.
- Creation
Timestamp string - Creation timestamp in RFC3339 text format.
- Expire
Time string - Expire time of the certificate in RFC3339 text format.
- Id string
- The provider-assigned unique ID for this managed resource.
- Self
Link string - The URI of the created resource.
- Subject
Alternative List<string>Names - Domains associated with the certificate via Subject Alternative Name.
- Certificate
Id int - The unique identifier for the resource.
- Creation
Timestamp string - Creation timestamp in RFC3339 text format.
- Expire
Time string - Expire time of the certificate in RFC3339 text format.
- Id string
- The provider-assigned unique ID for this managed resource.
- Self
Link string - The URI of the created resource.
- Subject
Alternative []stringNames - Domains associated with the certificate via Subject Alternative Name.
- certificate
Id Integer - The unique identifier for the resource.
- creation
Timestamp String - Creation timestamp in RFC3339 text format.
- expire
Time String - Expire time of the certificate in RFC3339 text format.
- id String
- The provider-assigned unique ID for this managed resource.
- self
Link String - The URI of the created resource.
- subject
Alternative List<String>Names - Domains associated with the certificate via Subject Alternative Name.
- certificate
Id number - The unique identifier for the resource.
- creation
Timestamp string - Creation timestamp in RFC3339 text format.
- expire
Time string - Expire time of the certificate in RFC3339 text format.
- id string
- The provider-assigned unique ID for this managed resource.
- self
Link string - The URI of the created resource.
- subject
Alternative string[]Names - Domains associated with the certificate via Subject Alternative Name.
- certificate_
id int - The unique identifier for the resource.
- creation_
timestamp str - Creation timestamp in RFC3339 text format.
- expire_
time str - Expire time of the certificate in RFC3339 text format.
- id str
- The provider-assigned unique ID for this managed resource.
- self_
link str - The URI of the created resource.
- subject_
alternative_ Sequence[str]names - Domains associated with the certificate via Subject Alternative Name.
- certificate
Id Number - The unique identifier for the resource.
- creation
Timestamp String - Creation timestamp in RFC3339 text format.
- expire
Time String - Expire time of the certificate in RFC3339 text format.
- id String
- The provider-assigned unique ID for this managed resource.
- self
Link String - The URI of the created resource.
- subject
Alternative List<String>Names - Domains associated with the certificate via Subject Alternative Name.
Look up Existing ManagedSslCertificate Resource
Get an existing ManagedSslCertificate resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
public static get(name: string, id: Input<ID>, state?: ManagedSslCertificateState, opts?: CustomResourceOptions): ManagedSslCertificate
@staticmethod
def get(resource_name: str,
id: str,
opts: Optional[ResourceOptions] = None,
certificate_id: Optional[int] = None,
creation_timestamp: Optional[str] = None,
description: Optional[str] = None,
expire_time: Optional[str] = None,
managed: Optional[ManagedSslCertificateManagedArgs] = None,
name: Optional[str] = None,
project: Optional[str] = None,
self_link: Optional[str] = None,
subject_alternative_names: Optional[Sequence[str]] = None,
type: Optional[str] = None) -> ManagedSslCertificate
func GetManagedSslCertificate(ctx *Context, name string, id IDInput, state *ManagedSslCertificateState, opts ...ResourceOption) (*ManagedSslCertificate, error)
public static ManagedSslCertificate Get(string name, Input<string> id, ManagedSslCertificateState? state, CustomResourceOptions? opts = null)
public static ManagedSslCertificate get(String name, Output<String> id, ManagedSslCertificateState state, CustomResourceOptions options)
Resource lookup is not supported in YAML
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- resource_name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- Certificate
Id int - The unique identifier for the resource.
- Creation
Timestamp string - Creation timestamp in RFC3339 text format.
- Description string
- An optional description of this resource.
- Expire
Time string - Expire time of the certificate in RFC3339 text format.
- Managed
Managed
Ssl Certificate Managed - Properties relevant to a managed certificate. These will be used if the
certificate is managed (as indicated by a value of
MANAGED
intype
). Structure is documented below. - Name string
- Name of the resource. Provided by the client when the resource is
created. The name must be 1-63 characters long, and comply with
RFC1035. Specifically, the name must be 1-63 characters long and match
the regular expression
a-z?
which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. These are in the same namespace as the managed SSL certificates. - Project string
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- Self
Link string - The URI of the created resource.
- Subject
Alternative List<string>Names - Domains associated with the certificate via Subject Alternative Name.
- Type string
- Enum field whose value is always
MANAGED
- used to signal to the API which type this is. Default value isMANAGED
. Possible values are:MANAGED
.
- Certificate
Id int - The unique identifier for the resource.
- Creation
Timestamp string - Creation timestamp in RFC3339 text format.
- Description string
- An optional description of this resource.
- Expire
Time string - Expire time of the certificate in RFC3339 text format.
- Managed
Managed
Ssl Certificate Managed Args - Properties relevant to a managed certificate. These will be used if the
certificate is managed (as indicated by a value of
MANAGED
intype
). Structure is documented below. - Name string
- Name of the resource. Provided by the client when the resource is
created. The name must be 1-63 characters long, and comply with
RFC1035. Specifically, the name must be 1-63 characters long and match
the regular expression
a-z?
which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. These are in the same namespace as the managed SSL certificates. - Project string
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- Self
Link string - The URI of the created resource.
- Subject
Alternative []stringNames - Domains associated with the certificate via Subject Alternative Name.
- Type string
- Enum field whose value is always
MANAGED
- used to signal to the API which type this is. Default value isMANAGED
. Possible values are:MANAGED
.
- certificate
Id Integer - The unique identifier for the resource.
- creation
Timestamp String - Creation timestamp in RFC3339 text format.
- description String
- An optional description of this resource.
- expire
Time String - Expire time of the certificate in RFC3339 text format.
- managed
Managed
Ssl Certificate Managed - Properties relevant to a managed certificate. These will be used if the
certificate is managed (as indicated by a value of
MANAGED
intype
). Structure is documented below. - name String
- Name of the resource. Provided by the client when the resource is
created. The name must be 1-63 characters long, and comply with
RFC1035. Specifically, the name must be 1-63 characters long and match
the regular expression
a-z?
which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. These are in the same namespace as the managed SSL certificates. - project String
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- self
Link String - The URI of the created resource.
- subject
Alternative List<String>Names - Domains associated with the certificate via Subject Alternative Name.
- type String
- Enum field whose value is always
MANAGED
- used to signal to the API which type this is. Default value isMANAGED
. Possible values are:MANAGED
.
- certificate
Id number - The unique identifier for the resource.
- creation
Timestamp string - Creation timestamp in RFC3339 text format.
- description string
- An optional description of this resource.
- expire
Time string - Expire time of the certificate in RFC3339 text format.
- managed
Managed
Ssl Certificate Managed - Properties relevant to a managed certificate. These will be used if the
certificate is managed (as indicated by a value of
MANAGED
intype
). Structure is documented below. - name string
- Name of the resource. Provided by the client when the resource is
created. The name must be 1-63 characters long, and comply with
RFC1035. Specifically, the name must be 1-63 characters long and match
the regular expression
a-z?
which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. These are in the same namespace as the managed SSL certificates. - project string
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- self
Link string - The URI of the created resource.
- subject
Alternative string[]Names - Domains associated with the certificate via Subject Alternative Name.
- type string
- Enum field whose value is always
MANAGED
- used to signal to the API which type this is. Default value isMANAGED
. Possible values are:MANAGED
.
- certificate_
id int - The unique identifier for the resource.
- creation_
timestamp str - Creation timestamp in RFC3339 text format.
- description str
- An optional description of this resource.
- expire_
time str - Expire time of the certificate in RFC3339 text format.
- managed
Managed
Ssl Certificate Managed Args - Properties relevant to a managed certificate. These will be used if the
certificate is managed (as indicated by a value of
MANAGED
intype
). Structure is documented below. - name str
- Name of the resource. Provided by the client when the resource is
created. The name must be 1-63 characters long, and comply with
RFC1035. Specifically, the name must be 1-63 characters long and match
the regular expression
a-z?
which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. These are in the same namespace as the managed SSL certificates. - project str
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- self_
link str - The URI of the created resource.
- subject_
alternative_ Sequence[str]names - Domains associated with the certificate via Subject Alternative Name.
- type str
- Enum field whose value is always
MANAGED
- used to signal to the API which type this is. Default value isMANAGED
. Possible values are:MANAGED
.
- certificate
Id Number - The unique identifier for the resource.
- creation
Timestamp String - Creation timestamp in RFC3339 text format.
- description String
- An optional description of this resource.
- expire
Time String - Expire time of the certificate in RFC3339 text format.
- managed Property Map
- Properties relevant to a managed certificate. These will be used if the
certificate is managed (as indicated by a value of
MANAGED
intype
). Structure is documented below. - name String
- Name of the resource. Provided by the client when the resource is
created. The name must be 1-63 characters long, and comply with
RFC1035. Specifically, the name must be 1-63 characters long and match
the regular expression
a-z?
which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. These are in the same namespace as the managed SSL certificates. - project String
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- self
Link String - The URI of the created resource.
- subject
Alternative List<String>Names - Domains associated with the certificate via Subject Alternative Name.
- type String
- Enum field whose value is always
MANAGED
- used to signal to the API which type this is. Default value isMANAGED
. Possible values are:MANAGED
.
Supporting Types
ManagedSslCertificateManaged, ManagedSslCertificateManagedArgs
- Domains List<string>
- Domains for which a managed SSL certificate will be valid. Currently, there can be up to 100 domains in this list.
- Domains []string
- Domains for which a managed SSL certificate will be valid. Currently, there can be up to 100 domains in this list.
- domains List<String>
- Domains for which a managed SSL certificate will be valid. Currently, there can be up to 100 domains in this list.
- domains string[]
- Domains for which a managed SSL certificate will be valid. Currently, there can be up to 100 domains in this list.
- domains Sequence[str]
- Domains for which a managed SSL certificate will be valid. Currently, there can be up to 100 domains in this list.
- domains List<String>
- Domains for which a managed SSL certificate will be valid. Currently, there can be up to 100 domains in this list.
Package Details
- Repository
- Google Cloud (GCP) Classic pulumi/pulumi-gcp
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the
google-beta
Terraform Provider.