ca_pools
Creates, updates, deletes, gets or lists a ca_pools resource.
Overview
| Name | ca_pools |
| Type | Resource |
| Id | google.privateca.ca_pools |
Fields
The following fields are returned by SELECT queries:
- get
- list
| Name | Datatype | Description |
|---|---|---|
name | string | Identifier. The resource name for this CaPool in the format projects/*/locations/*/caPools/*. |
encryptionSpec | object | Optional. When EncryptionSpec is provided, the Subject, SubjectAltNames, and the PEM-encoded certificate fields will be encrypted at rest. (id: EncryptionSpec) |
issuancePolicy | object | Optional. The IssuancePolicy to control how Certificates will be issued from this CaPool. (id: IssuancePolicy) |
labels | object | Optional. Labels with user-defined metadata. |
publishingOptions | object | Optional. The PublishingOptions to follow when issuing Certificates from any CertificateAuthority in this CaPool. (id: PublishingOptions) |
tier | string | Required. Immutable. The Tier of this CaPool. (TIER_UNSPECIFIED, ENTERPRISE, DEVOPS) |
| Name | Datatype | Description |
|---|---|---|
name | string | Identifier. The resource name for this CaPool in the format projects/*/locations/*/caPools/*. |
encryptionSpec | object | Optional. When EncryptionSpec is provided, the Subject, SubjectAltNames, and the PEM-encoded certificate fields will be encrypted at rest. (id: EncryptionSpec) |
issuancePolicy | object | Optional. The IssuancePolicy to control how Certificates will be issued from this CaPool. (id: IssuancePolicy) |
labels | object | Optional. Labels with user-defined metadata. |
publishingOptions | object | Optional. The PublishingOptions to follow when issuing Certificates from any CertificateAuthority in this CaPool. (id: PublishingOptions) |
tier | string | Required. Immutable. The Tier of this CaPool. (TIER_UNSPECIFIED, ENTERPRISE, DEVOPS) |
Methods
The following methods are available for this resource:
| Name | Accessible by | Required Params | Optional Params | Description |
|---|---|---|---|---|
get | select | projectsId, locationsId, caPoolsId | Returns a CaPool. | |
list | select | projectsId, locationsId | orderBy, pageSize, filter, pageToken | Lists CaPools. |
create | insert | projectsId, locationsId | requestId, caPoolId | Create a CaPool. |
patch | update | projectsId, locationsId, caPoolsId | updateMask, requestId | Update a CaPool. |
delete | delete | projectsId, locationsId, caPoolsId | requestId, ignoreDependentResources | Delete a CaPool. |
Parameters
Parameters can be passed in the WHERE clause of a query. Check the Methods section to see which parameters are required or optional for each operation.
| Name | Datatype | Description |
|---|---|---|
caPoolsId | string | |
locationsId | string | |
projectsId | string | |
caPoolId | string | |
filter | string | |
ignoreDependentResources | boolean | |
orderBy | string | |
pageSize | integer (int32) | |
pageToken | string | |
requestId | string | |
updateMask | string (google-fieldmask) |
SELECT examples
- get
- list
Returns a CaPool.
SELECT
name,
encryptionSpec,
issuancePolicy,
labels,
publishingOptions,
tier
FROM google.privateca.ca_pools
WHERE projectsId = '{{ projectsId }}' -- required
AND locationsId = '{{ locationsId }}' -- required
AND caPoolsId = '{{ caPoolsId }}' -- required
;
Lists CaPools.
SELECT
name,
encryptionSpec,
issuancePolicy,
labels,
publishingOptions,
tier
FROM google.privateca.ca_pools
WHERE projectsId = '{{ projectsId }}' -- required
AND locationsId = '{{ locationsId }}' -- required
AND orderBy = '{{ orderBy }}'
AND pageSize = '{{ pageSize }}'
AND filter = '{{ filter }}'
AND pageToken = '{{ pageToken }}'
;
INSERT examples
- create
- Manifest
Create a CaPool.
INSERT INTO google.privateca.ca_pools (
data__publishingOptions,
data__labels,
data__tier,
data__issuancePolicy,
data__encryptionSpec,
data__name,
projectsId,
locationsId,
requestId,
caPoolId
)
SELECT
'{{ publishingOptions }}',
'{{ labels }}',
'{{ tier }}',
'{{ issuancePolicy }}',
'{{ encryptionSpec }}',
'{{ name }}',
'{{ projectsId }}',
'{{ locationsId }}',
'{{ requestId }}',
'{{ caPoolId }}'
RETURNING
name,
done,
error,
metadata,
response
;
# Description fields are for documentation purposes
- name: ca_pools
props:
- name: projectsId
value: "{{ projectsId }}"
description: Required parameter for the ca_pools resource.
- name: locationsId
value: "{{ locationsId }}"
description: Required parameter for the ca_pools resource.
- name: publishingOptions
description: |
Optional. The PublishingOptions to follow when issuing Certificates from any CertificateAuthority in this CaPool.
value:
publishCrl: {{ publishCrl }}
encodingFormat: "{{ encodingFormat }}"
publishCaCert: {{ publishCaCert }}
- name: labels
value: "{{ labels }}"
description: |
Optional. Labels with user-defined metadata.
- name: tier
value: "{{ tier }}"
description: |
Required. Immutable. The Tier of this CaPool.
valid_values: ['TIER_UNSPECIFIED', 'ENTERPRISE', 'DEVOPS']
- name: issuancePolicy
description: |
Optional. The IssuancePolicy to control how Certificates will be issued from this CaPool.
value:
allowRequesterSpecifiedNotBeforeTime: {{ allowRequesterSpecifiedNotBeforeTime }}
allowedIssuanceModes:
allowCsrBasedIssuance: {{ allowCsrBasedIssuance }}
allowConfigBasedIssuance: {{ allowConfigBasedIssuance }}
passthroughExtensions:
additionalExtensions:
- objectIdPath: "{{ objectIdPath }}"
knownExtensions:
- "{{ knownExtensions }}"
allowedKeyTypes:
- rsa:
minModulusSize: "{{ minModulusSize }}"
maxModulusSize: "{{ maxModulusSize }}"
ellipticCurve:
signatureAlgorithm: "{{ signatureAlgorithm }}"
identityConstraints:
allowSubjectPassthrough: {{ allowSubjectPassthrough }}
allowSubjectAltNamesPassthrough: {{ allowSubjectAltNamesPassthrough }}
celExpression:
expression: "{{ expression }}"
description: "{{ description }}"
location: "{{ location }}"
title: "{{ title }}"
backdateDuration: "{{ backdateDuration }}"
maximumLifetime: "{{ maximumLifetime }}"
baselineValues:
caOptions:
isCa: {{ isCa }}
maxIssuerPathLength: {{ maxIssuerPathLength }}
aiaOcspServers:
- "{{ aiaOcspServers }}"
additionalExtensions:
- critical: {{ critical }}
objectId:
objectIdPath:
- {{ objectIdPath }}
value: "{{ value }}"
policyIds:
- objectIdPath: "{{ objectIdPath }}"
nameConstraints:
critical: {{ critical }}
excludedIpRanges:
- "{{ excludedIpRanges }}"
permittedEmailAddresses:
- "{{ permittedEmailAddresses }}"
excludedDnsNames:
- "{{ excludedDnsNames }}"
permittedUris:
- "{{ permittedUris }}"
excludedEmailAddresses:
- "{{ excludedEmailAddresses }}"
excludedUris:
- "{{ excludedUris }}"
permittedIpRanges:
- "{{ permittedIpRanges }}"
permittedDnsNames:
- "{{ permittedDnsNames }}"
keyUsage:
baseKeyUsage:
keyEncipherment: {{ keyEncipherment }}
certSign: {{ certSign }}
digitalSignature: {{ digitalSignature }}
contentCommitment: {{ contentCommitment }}
encipherOnly: {{ encipherOnly }}
decipherOnly: {{ decipherOnly }}
dataEncipherment: {{ dataEncipherment }}
crlSign: {{ crlSign }}
keyAgreement: {{ keyAgreement }}
extendedKeyUsage:
serverAuth: {{ serverAuth }}
clientAuth: {{ clientAuth }}
emailProtection: {{ emailProtection }}
ocspSigning: {{ ocspSigning }}
codeSigning: {{ codeSigning }}
timeStamping: {{ timeStamping }}
unknownExtendedKeyUsages:
- objectIdPath: "{{ objectIdPath }}"
- name: encryptionSpec
description: |
Optional. When EncryptionSpec is provided, the Subject, SubjectAltNames, and the PEM-encoded certificate fields will be encrypted at rest.
value:
cloudKmsKey: "{{ cloudKmsKey }}"
- name: name
value: "{{ name }}"
description: |
Identifier. The resource name for this CaPool in the format `projects/*/locations/*/caPools/*`.
- name: requestId
value: "{{ requestId }}"
- name: caPoolId
value: "{{ caPoolId }}"
UPDATE examples
- patch
Update a CaPool.
UPDATE google.privateca.ca_pools
SET
data__publishingOptions = '{{ publishingOptions }}',
data__labels = '{{ labels }}',
data__tier = '{{ tier }}',
data__issuancePolicy = '{{ issuancePolicy }}',
data__encryptionSpec = '{{ encryptionSpec }}',
data__name = '{{ name }}'
WHERE
projectsId = '{{ projectsId }}' --required
AND locationsId = '{{ locationsId }}' --required
AND caPoolsId = '{{ caPoolsId }}' --required
AND updateMask = '{{ updateMask}}'
AND requestId = '{{ requestId}}'
RETURNING
name,
done,
error,
metadata,
response;
DELETE examples
- delete
Delete a CaPool.
DELETE FROM google.privateca.ca_pools
WHERE projectsId = '{{ projectsId }}' --required
AND locationsId = '{{ locationsId }}' --required
AND caPoolsId = '{{ caPoolsId }}' --required
AND requestId = '{{ requestId }}'
AND ignoreDependentResources = '{{ ignoreDependentResources }}'
;