@pulumi/vault 7.12.0-alpha.1786704608 → 7.12.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/aws/authBackendConfigIdentity.d.ts +3 -3
- package/gcp/getKmsVerify.d.ts +167 -0
- package/gcp/getKmsVerify.d.ts.map +1 -0
- package/gcp/getKmsVerify.js +133 -0
- package/gcp/getKmsVerify.js.map +1 -0
- package/gcp/index.d.ts +9 -0
- package/gcp/index.d.ts.map +1 -1
- package/gcp/index.js +14 -1
- package/gcp/index.js.map +1 -1
- package/gcp/kmsSecretBackend.d.ts +491 -0
- package/gcp/kmsSecretBackend.d.ts.map +1 -0
- package/gcp/kmsSecretBackend.js +246 -0
- package/gcp/kmsSecretBackend.js.map +1 -0
- package/gcp/kmsSecretBackendKey.d.ts +453 -0
- package/gcp/kmsSecretBackendKey.d.ts.map +1 -0
- package/gcp/kmsSecretBackendKey.js +301 -0
- package/gcp/kmsSecretBackendKey.js.map +1 -0
- package/identity/entityAlias.d.ts +30 -0
- package/identity/entityAlias.d.ts.map +1 -1
- package/identity/entityAlias.js +4 -0
- package/identity/entityAlias.js.map +1 -1
- package/index.d.ts +9 -0
- package/index.d.ts.map +1 -1
- package/index.js +17 -2
- package/index.js.map +1 -1
- package/jwt/authBackend.d.ts +21 -0
- package/jwt/authBackend.d.ts.map +1 -1
- package/jwt/authBackend.js +21 -0
- package/jwt/authBackend.js.map +1 -1
- package/kerberosAuthBackendConfig.d.ts +267 -0
- package/kerberosAuthBackendConfig.d.ts.map +1 -0
- package/kerberosAuthBackendConfig.js +202 -0
- package/kerberosAuthBackendConfig.js.map +1 -0
- package/kerberosAuthBackendGroup.d.ts +246 -0
- package/kerberosAuthBackendGroup.d.ts.map +1 -0
- package/kerberosAuthBackendGroup.js +218 -0
- package/kerberosAuthBackendGroup.js.map +1 -0
- package/kerberosAuthBackendLdapConfig.d.ts +756 -0
- package/kerberosAuthBackendLdapConfig.d.ts.map +1 -0
- package/kerberosAuthBackendLdapConfig.js +337 -0
- package/kerberosAuthBackendLdapConfig.js.map +1 -0
- package/ldap/getStaticCredentials.d.ts +1 -0
- package/ldap/getStaticCredentials.d.ts.map +1 -1
- package/ldap/getStaticCredentials.js.map +1 -1
- package/ldap/secretBackend.d.ts +54 -0
- package/ldap/secretBackend.d.ts.map +1 -1
- package/ldap/secretBackend.js +6 -0
- package/ldap/secretBackend.js.map +1 -1
- package/ldap/secretBackendDynamicRole.d.ts +15 -0
- package/ldap/secretBackendDynamicRole.d.ts.map +1 -1
- package/ldap/secretBackendDynamicRole.js +2 -0
- package/ldap/secretBackendDynamicRole.js.map +1 -1
- package/ldap/secretBackendStaticRole.d.ts +84 -0
- package/ldap/secretBackendStaticRole.d.ts.map +1 -1
- package/ldap/secretBackendStaticRole.js +8 -0
- package/ldap/secretBackendStaticRole.js.map +1 -1
- package/package.json +2 -2
- package/pkisecret/secretBackendCert.d.ts +57 -3
- package/pkisecret/secretBackendCert.d.ts.map +1 -1
- package/pkisecret/secretBackendCert.js +8 -0
- package/pkisecret/secretBackendCert.js.map +1 -1
- package/pkisecret/secretBackendRootCert.d.ts +57 -3
- package/pkisecret/secretBackendRootCert.d.ts.map +1 -1
- package/pkisecret/secretBackendRootCert.js +8 -0
- package/pkisecret/secretBackendRootCert.js.map +1 -1
- package/pkisecret/secretBackendRootSignIntermediate.d.ts +42 -0
- package/pkisecret/secretBackendRootSignIntermediate.d.ts.map +1 -1
- package/pkisecret/secretBackendRootSignIntermediate.js +6 -0
- package/pkisecret/secretBackendRootSignIntermediate.js.map +1 -1
- package/pkisecret/secretBackendSign.d.ts +45 -3
- package/pkisecret/secretBackendSign.d.ts.map +1 -1
- package/pkisecret/secretBackendSign.js +6 -0
- package/pkisecret/secretBackendSign.js.map +1 -1
- package/secrets/syncAwsDestination.d.ts +63 -0
- package/secrets/syncAwsDestination.d.ts.map +1 -1
- package/secrets/syncAwsDestination.js +37 -0
- package/secrets/syncAwsDestination.js.map +1 -1
- package/secrets/syncGcpDestination.d.ts +87 -0
- package/secrets/syncGcpDestination.d.ts.map +1 -1
- package/secrets/syncGcpDestination.js +43 -0
- package/secrets/syncGcpDestination.js.map +1 -1
- package/terraformcloud/secretBackend.d.ts +93 -0
- package/terraformcloud/secretBackend.d.ts.map +1 -1
- package/terraformcloud/secretBackend.js +10 -0
- package/terraformcloud/secretBackend.js.map +1 -1
- package/transform/index.d.ts +3 -0
- package/transform/index.d.ts.map +1 -1
- package/transform/index.js +6 -1
- package/transform/index.js.map +1 -1
- package/transform/keyConfiguration.d.ts +145 -0
- package/transform/keyConfiguration.d.ts.map +1 -0
- package/transform/keyConfiguration.js +110 -0
- package/transform/keyConfiguration.js.map +1 -0
|
@@ -62,7 +62,7 @@ export declare class AuthBackendConfigIdentity extends pulumi.CustomResource {
|
|
|
62
62
|
readonly ec2Metadatas: pulumi.Output<string[] | undefined>;
|
|
63
63
|
/**
|
|
64
64
|
* How to generate the identity alias when using the iam auth method. Valid choices are
|
|
65
|
-
* `roleId`, `uniqueId`, and `
|
|
65
|
+
* `roleId`, `uniqueId`, `fullArn`, and `canonicalArn`. Defaults to `roleId`. `canonicalArn` requires Vault 1.16+.
|
|
66
66
|
*/
|
|
67
67
|
readonly iamAlias: pulumi.Output<string | undefined>;
|
|
68
68
|
/**
|
|
@@ -107,7 +107,7 @@ export interface AuthBackendConfigIdentityState {
|
|
|
107
107
|
ec2Metadatas?: pulumi.Input<pulumi.Input<string>[] | undefined>;
|
|
108
108
|
/**
|
|
109
109
|
* How to generate the identity alias when using the iam auth method. Valid choices are
|
|
110
|
-
* `roleId`, `uniqueId`, and `
|
|
110
|
+
* `roleId`, `uniqueId`, `fullArn`, and `canonicalArn`. Defaults to `roleId`. `canonicalArn` requires Vault 1.16+.
|
|
111
111
|
*/
|
|
112
112
|
iamAlias?: pulumi.Input<string | undefined>;
|
|
113
113
|
/**
|
|
@@ -144,7 +144,7 @@ export interface AuthBackendConfigIdentityArgs {
|
|
|
144
144
|
ec2Metadatas?: pulumi.Input<pulumi.Input<string>[] | undefined>;
|
|
145
145
|
/**
|
|
146
146
|
* How to generate the identity alias when using the iam auth method. Valid choices are
|
|
147
|
-
* `roleId`, `uniqueId`, and `
|
|
147
|
+
* `roleId`, `uniqueId`, `fullArn`, and `canonicalArn`. Defaults to `roleId`. `canonicalArn` requires Vault 1.16+.
|
|
148
148
|
*/
|
|
149
149
|
iamAlias?: pulumi.Input<string | undefined>;
|
|
150
150
|
/**
|
|
@@ -0,0 +1,167 @@
|
|
|
1
|
+
import * as pulumi from "@pulumi/pulumi";
|
|
2
|
+
/**
|
|
3
|
+
* Verifies a digital signature against a digest using a GCP KMS signing key through Vault. This data source
|
|
4
|
+
* performs read-only signature verification operations.
|
|
5
|
+
*
|
|
6
|
+
* ## Example Usage
|
|
7
|
+
*
|
|
8
|
+
* ### Basic Signature Verification
|
|
9
|
+
*
|
|
10
|
+
* ```typescript
|
|
11
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
12
|
+
* import * as std from "@pulumi/std";
|
|
13
|
+
* import * as vault from "@pulumi/vault";
|
|
14
|
+
*
|
|
15
|
+
* const gcpkms = new vault.gcp.KmsSecretBackend("gcpkms", {
|
|
16
|
+
* path: "gcpkms",
|
|
17
|
+
* credentialsWo: std.file({
|
|
18
|
+
* input: "gcp-credentials.json",
|
|
19
|
+
* }).then(invoke => invoke.result),
|
|
20
|
+
* credentialsWoVersion: 1,
|
|
21
|
+
* });
|
|
22
|
+
* const signingKey = new vault.gcp.KmsSecretBackendKey("signing_key", {
|
|
23
|
+
* mount: gcpkms.path,
|
|
24
|
+
* keyName: "signing-key",
|
|
25
|
+
* keyRing: "projects/my-project/locations/us-central1/keyRings/my-keyring",
|
|
26
|
+
* purpose: "asymmetric_sign",
|
|
27
|
+
* algorithm: "rsa_sign_pss_2048_sha256",
|
|
28
|
+
* });
|
|
29
|
+
* const signatureCheck = vault.gcp.getKmsVerifyOutput({
|
|
30
|
+
* mount: gcpkms.path,
|
|
31
|
+
* keyName: signingKey.keyName,
|
|
32
|
+
* digest: std.base64encode({
|
|
33
|
+
* input: "my message digest",
|
|
34
|
+
* }).then(invoke => invoke.result),
|
|
35
|
+
* signature: "BASE64_ENCODED_SIGNATURE",
|
|
36
|
+
* keyVersion: 1,
|
|
37
|
+
* });
|
|
38
|
+
* export const signatureIsValid = signatureCheck.valid;
|
|
39
|
+
* ```
|
|
40
|
+
*/
|
|
41
|
+
export declare function getKmsVerify(args: GetKmsVerifyArgs, opts?: pulumi.InvokeOptions): Promise<GetKmsVerifyResult>;
|
|
42
|
+
/**
|
|
43
|
+
* A collection of arguments for invoking getKmsVerify.
|
|
44
|
+
*/
|
|
45
|
+
export interface GetKmsVerifyArgs {
|
|
46
|
+
/**
|
|
47
|
+
* Base64-encoded digest to verify. The digest should be created using the hash algorithm
|
|
48
|
+
* specified in the key's algorithm (e.g., SHA256 for RSA_SIGN_PSS_2048_SHA256).
|
|
49
|
+
*/
|
|
50
|
+
digest: string;
|
|
51
|
+
/**
|
|
52
|
+
* Name of the signing key to use for verification. This must reference a key with
|
|
53
|
+
* purpose `ASYMMETRIC_SIGN`.
|
|
54
|
+
*/
|
|
55
|
+
keyName: string;
|
|
56
|
+
/**
|
|
57
|
+
* Specific version of the key to use for verification.
|
|
58
|
+
*/
|
|
59
|
+
keyVersion: number;
|
|
60
|
+
/**
|
|
61
|
+
* Path where the GCP KMS secrets engine is mounted.
|
|
62
|
+
*/
|
|
63
|
+
mount: string;
|
|
64
|
+
/**
|
|
65
|
+
* The namespace of the target resource.
|
|
66
|
+
* The value should not contain leading or trailing forward slashes.
|
|
67
|
+
* The `namespace` is always relative to the provider's configured
|
|
68
|
+
* [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
|
|
69
|
+
* *Available only for Vault Enterprise*.
|
|
70
|
+
*/
|
|
71
|
+
namespace?: string;
|
|
72
|
+
/**
|
|
73
|
+
* Base64-encoded signature to verify against the digest.
|
|
74
|
+
*/
|
|
75
|
+
signature: string;
|
|
76
|
+
}
|
|
77
|
+
/**
|
|
78
|
+
* A collection of values returned by getKmsVerify.
|
|
79
|
+
*/
|
|
80
|
+
export interface GetKmsVerifyResult {
|
|
81
|
+
readonly digest: string;
|
|
82
|
+
readonly keyName: string;
|
|
83
|
+
readonly keyVersion: number;
|
|
84
|
+
readonly mount: string;
|
|
85
|
+
readonly namespace?: string;
|
|
86
|
+
readonly signature: string;
|
|
87
|
+
/**
|
|
88
|
+
* Boolean indicating whether the signature is valid (`true`) or invalid (`false`).
|
|
89
|
+
*/
|
|
90
|
+
readonly valid: boolean;
|
|
91
|
+
}
|
|
92
|
+
/**
|
|
93
|
+
* Verifies a digital signature against a digest using a GCP KMS signing key through Vault. This data source
|
|
94
|
+
* performs read-only signature verification operations.
|
|
95
|
+
*
|
|
96
|
+
* ## Example Usage
|
|
97
|
+
*
|
|
98
|
+
* ### Basic Signature Verification
|
|
99
|
+
*
|
|
100
|
+
* ```typescript
|
|
101
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
102
|
+
* import * as std from "@pulumi/std";
|
|
103
|
+
* import * as vault from "@pulumi/vault";
|
|
104
|
+
*
|
|
105
|
+
* const gcpkms = new vault.gcp.KmsSecretBackend("gcpkms", {
|
|
106
|
+
* path: "gcpkms",
|
|
107
|
+
* credentialsWo: std.file({
|
|
108
|
+
* input: "gcp-credentials.json",
|
|
109
|
+
* }).then(invoke => invoke.result),
|
|
110
|
+
* credentialsWoVersion: 1,
|
|
111
|
+
* });
|
|
112
|
+
* const signingKey = new vault.gcp.KmsSecretBackendKey("signing_key", {
|
|
113
|
+
* mount: gcpkms.path,
|
|
114
|
+
* keyName: "signing-key",
|
|
115
|
+
* keyRing: "projects/my-project/locations/us-central1/keyRings/my-keyring",
|
|
116
|
+
* purpose: "asymmetric_sign",
|
|
117
|
+
* algorithm: "rsa_sign_pss_2048_sha256",
|
|
118
|
+
* });
|
|
119
|
+
* const signatureCheck = vault.gcp.getKmsVerifyOutput({
|
|
120
|
+
* mount: gcpkms.path,
|
|
121
|
+
* keyName: signingKey.keyName,
|
|
122
|
+
* digest: std.base64encode({
|
|
123
|
+
* input: "my message digest",
|
|
124
|
+
* }).then(invoke => invoke.result),
|
|
125
|
+
* signature: "BASE64_ENCODED_SIGNATURE",
|
|
126
|
+
* keyVersion: 1,
|
|
127
|
+
* });
|
|
128
|
+
* export const signatureIsValid = signatureCheck.valid;
|
|
129
|
+
* ```
|
|
130
|
+
*/
|
|
131
|
+
export declare function getKmsVerifyOutput(args: GetKmsVerifyOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetKmsVerifyResult>;
|
|
132
|
+
/**
|
|
133
|
+
* A collection of arguments for invoking getKmsVerify.
|
|
134
|
+
*/
|
|
135
|
+
export interface GetKmsVerifyOutputArgs {
|
|
136
|
+
/**
|
|
137
|
+
* Base64-encoded digest to verify. The digest should be created using the hash algorithm
|
|
138
|
+
* specified in the key's algorithm (e.g., SHA256 for RSA_SIGN_PSS_2048_SHA256).
|
|
139
|
+
*/
|
|
140
|
+
digest: pulumi.Input<string>;
|
|
141
|
+
/**
|
|
142
|
+
* Name of the signing key to use for verification. This must reference a key with
|
|
143
|
+
* purpose `ASYMMETRIC_SIGN`.
|
|
144
|
+
*/
|
|
145
|
+
keyName: pulumi.Input<string>;
|
|
146
|
+
/**
|
|
147
|
+
* Specific version of the key to use for verification.
|
|
148
|
+
*/
|
|
149
|
+
keyVersion: pulumi.Input<number>;
|
|
150
|
+
/**
|
|
151
|
+
* Path where the GCP KMS secrets engine is mounted.
|
|
152
|
+
*/
|
|
153
|
+
mount: pulumi.Input<string>;
|
|
154
|
+
/**
|
|
155
|
+
* The namespace of the target resource.
|
|
156
|
+
* The value should not contain leading or trailing forward slashes.
|
|
157
|
+
* The `namespace` is always relative to the provider's configured
|
|
158
|
+
* [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
|
|
159
|
+
* *Available only for Vault Enterprise*.
|
|
160
|
+
*/
|
|
161
|
+
namespace?: pulumi.Input<string | undefined>;
|
|
162
|
+
/**
|
|
163
|
+
* Base64-encoded signature to verify against the digest.
|
|
164
|
+
*/
|
|
165
|
+
signature: pulumi.Input<string>;
|
|
166
|
+
}
|
|
167
|
+
//# sourceMappingURL=getKmsVerify.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getKmsVerify.d.ts","sourceRoot":"","sources":["../../gcp/getKmsVerify.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,MAAM,MAAM,gBAAgB,CAAC;AAGzC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,gBAAgB,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,aAAa,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAU7G;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC7B;;;OAGG;IACH,MAAM,EAAE,MAAM,CAAC;IACf;;;OAGG;IACH,OAAO,EAAE,MAAM,CAAC;IAChB;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC;IACnB;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IACd;;;;;;OAMG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IAC/B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B;;OAEG;IACH,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;CAC3B;AACD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,sBAAsB,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,mBAAmB,GAAG,MAAM,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAUrI;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACnC;;;OAGG;IACH,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAC7B;;;OAGG;IACH,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAC9B;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACjC;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAC5B;;;;;;OAMG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IAC7C;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;CACnC"}
|
|
@@ -0,0 +1,133 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// *** WARNING: this file was generated by pulumi-language-nodejs. ***
|
|
3
|
+
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
|
4
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
5
|
+
if (k2 === undefined) k2 = k;
|
|
6
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
7
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
8
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
9
|
+
}
|
|
10
|
+
Object.defineProperty(o, k2, desc);
|
|
11
|
+
}) : (function(o, m, k, k2) {
|
|
12
|
+
if (k2 === undefined) k2 = k;
|
|
13
|
+
o[k2] = m[k];
|
|
14
|
+
}));
|
|
15
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
16
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
17
|
+
}) : function(o, v) {
|
|
18
|
+
o["default"] = v;
|
|
19
|
+
});
|
|
20
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
21
|
+
if (mod && mod.__esModule) return mod;
|
|
22
|
+
var result = {};
|
|
23
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
24
|
+
__setModuleDefault(result, mod);
|
|
25
|
+
return result;
|
|
26
|
+
};
|
|
27
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
28
|
+
exports.getKmsVerifyOutput = exports.getKmsVerify = void 0;
|
|
29
|
+
const pulumi = __importStar(require("@pulumi/pulumi"));
|
|
30
|
+
const utilities = __importStar(require("../utilities"));
|
|
31
|
+
/**
|
|
32
|
+
* Verifies a digital signature against a digest using a GCP KMS signing key through Vault. This data source
|
|
33
|
+
* performs read-only signature verification operations.
|
|
34
|
+
*
|
|
35
|
+
* ## Example Usage
|
|
36
|
+
*
|
|
37
|
+
* ### Basic Signature Verification
|
|
38
|
+
*
|
|
39
|
+
* ```typescript
|
|
40
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
41
|
+
* import * as std from "@pulumi/std";
|
|
42
|
+
* import * as vault from "@pulumi/vault";
|
|
43
|
+
*
|
|
44
|
+
* const gcpkms = new vault.gcp.KmsSecretBackend("gcpkms", {
|
|
45
|
+
* path: "gcpkms",
|
|
46
|
+
* credentialsWo: std.file({
|
|
47
|
+
* input: "gcp-credentials.json",
|
|
48
|
+
* }).then(invoke => invoke.result),
|
|
49
|
+
* credentialsWoVersion: 1,
|
|
50
|
+
* });
|
|
51
|
+
* const signingKey = new vault.gcp.KmsSecretBackendKey("signing_key", {
|
|
52
|
+
* mount: gcpkms.path,
|
|
53
|
+
* keyName: "signing-key",
|
|
54
|
+
* keyRing: "projects/my-project/locations/us-central1/keyRings/my-keyring",
|
|
55
|
+
* purpose: "asymmetric_sign",
|
|
56
|
+
* algorithm: "rsa_sign_pss_2048_sha256",
|
|
57
|
+
* });
|
|
58
|
+
* const signatureCheck = vault.gcp.getKmsVerifyOutput({
|
|
59
|
+
* mount: gcpkms.path,
|
|
60
|
+
* keyName: signingKey.keyName,
|
|
61
|
+
* digest: std.base64encode({
|
|
62
|
+
* input: "my message digest",
|
|
63
|
+
* }).then(invoke => invoke.result),
|
|
64
|
+
* signature: "BASE64_ENCODED_SIGNATURE",
|
|
65
|
+
* keyVersion: 1,
|
|
66
|
+
* });
|
|
67
|
+
* export const signatureIsValid = signatureCheck.valid;
|
|
68
|
+
* ```
|
|
69
|
+
*/
|
|
70
|
+
function getKmsVerify(args, opts) {
|
|
71
|
+
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {});
|
|
72
|
+
return pulumi.runtime.invoke("vault:gcp/getKmsVerify:getKmsVerify", {
|
|
73
|
+
"digest": args.digest,
|
|
74
|
+
"keyName": args.keyName,
|
|
75
|
+
"keyVersion": args.keyVersion,
|
|
76
|
+
"mount": args.mount,
|
|
77
|
+
"namespace": args.namespace,
|
|
78
|
+
"signature": args.signature,
|
|
79
|
+
}, opts);
|
|
80
|
+
}
|
|
81
|
+
exports.getKmsVerify = getKmsVerify;
|
|
82
|
+
/**
|
|
83
|
+
* Verifies a digital signature against a digest using a GCP KMS signing key through Vault. This data source
|
|
84
|
+
* performs read-only signature verification operations.
|
|
85
|
+
*
|
|
86
|
+
* ## Example Usage
|
|
87
|
+
*
|
|
88
|
+
* ### Basic Signature Verification
|
|
89
|
+
*
|
|
90
|
+
* ```typescript
|
|
91
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
92
|
+
* import * as std from "@pulumi/std";
|
|
93
|
+
* import * as vault from "@pulumi/vault";
|
|
94
|
+
*
|
|
95
|
+
* const gcpkms = new vault.gcp.KmsSecretBackend("gcpkms", {
|
|
96
|
+
* path: "gcpkms",
|
|
97
|
+
* credentialsWo: std.file({
|
|
98
|
+
* input: "gcp-credentials.json",
|
|
99
|
+
* }).then(invoke => invoke.result),
|
|
100
|
+
* credentialsWoVersion: 1,
|
|
101
|
+
* });
|
|
102
|
+
* const signingKey = new vault.gcp.KmsSecretBackendKey("signing_key", {
|
|
103
|
+
* mount: gcpkms.path,
|
|
104
|
+
* keyName: "signing-key",
|
|
105
|
+
* keyRing: "projects/my-project/locations/us-central1/keyRings/my-keyring",
|
|
106
|
+
* purpose: "asymmetric_sign",
|
|
107
|
+
* algorithm: "rsa_sign_pss_2048_sha256",
|
|
108
|
+
* });
|
|
109
|
+
* const signatureCheck = vault.gcp.getKmsVerifyOutput({
|
|
110
|
+
* mount: gcpkms.path,
|
|
111
|
+
* keyName: signingKey.keyName,
|
|
112
|
+
* digest: std.base64encode({
|
|
113
|
+
* input: "my message digest",
|
|
114
|
+
* }).then(invoke => invoke.result),
|
|
115
|
+
* signature: "BASE64_ENCODED_SIGNATURE",
|
|
116
|
+
* keyVersion: 1,
|
|
117
|
+
* });
|
|
118
|
+
* export const signatureIsValid = signatureCheck.valid;
|
|
119
|
+
* ```
|
|
120
|
+
*/
|
|
121
|
+
function getKmsVerifyOutput(args, opts) {
|
|
122
|
+
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {});
|
|
123
|
+
return pulumi.runtime.invokeOutput("vault:gcp/getKmsVerify:getKmsVerify", {
|
|
124
|
+
"digest": args.digest,
|
|
125
|
+
"keyName": args.keyName,
|
|
126
|
+
"keyVersion": args.keyVersion,
|
|
127
|
+
"mount": args.mount,
|
|
128
|
+
"namespace": args.namespace,
|
|
129
|
+
"signature": args.signature,
|
|
130
|
+
}, opts);
|
|
131
|
+
}
|
|
132
|
+
exports.getKmsVerifyOutput = getKmsVerifyOutput;
|
|
133
|
+
//# sourceMappingURL=getKmsVerify.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getKmsVerify.js","sourceRoot":"","sources":["../../gcp/getKmsVerify.ts"],"names":[],"mappings":";AAAA,sEAAsE;AACtE,iFAAiF;;;;;;;;;;;;;;;;;;;;;;;;;;AAEjF,uDAAyC;AACzC,wDAA0C;AAE1C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AACH,SAAgB,YAAY,CAAC,IAAsB,EAAE,IAA2B;IAC5E,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,oBAAoB,EAAE,EAAE,IAAI,IAAI,EAAE,CAAC,CAAC;IACzE,OAAO,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,qCAAqC,EAAE;QAChE,QAAQ,EAAE,IAAI,CAAC,MAAM;QACrB,SAAS,EAAE,IAAI,CAAC,OAAO;QACvB,YAAY,EAAE,IAAI,CAAC,UAAU;QAC7B,OAAO,EAAE,IAAI,CAAC,KAAK;QACnB,WAAW,EAAE,IAAI,CAAC,SAAS;QAC3B,WAAW,EAAE,IAAI,CAAC,SAAS;KAC9B,EAAE,IAAI,CAAC,CAAC;AACb,CAAC;AAVD,oCAUC;AAqDD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AACH,SAAgB,kBAAkB,CAAC,IAA4B,EAAE,IAAiC;IAC9F,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,oBAAoB,EAAE,EAAE,IAAI,IAAI,EAAE,CAAC,CAAC;IACzE,OAAO,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,qCAAqC,EAAE;QACtE,QAAQ,EAAE,IAAI,CAAC,MAAM;QACrB,SAAS,EAAE,IAAI,CAAC,OAAO;QACvB,YAAY,EAAE,IAAI,CAAC,UAAU;QAC7B,OAAO,EAAE,IAAI,CAAC,KAAK;QACnB,WAAW,EAAE,IAAI,CAAC,SAAS;QAC3B,WAAW,EAAE,IAAI,CAAC,SAAS;KAC9B,EAAE,IAAI,CAAC,CAAC;AACb,CAAC;AAVD,gDAUC"}
|
package/gcp/index.d.ts
CHANGED
|
@@ -7,6 +7,15 @@ export declare const AuthBackendRole: typeof import("./authBackendRole").AuthBac
|
|
|
7
7
|
export { GetAuthBackendRoleArgs, GetAuthBackendRoleResult, GetAuthBackendRoleOutputArgs } from "./getAuthBackendRole";
|
|
8
8
|
export declare const getAuthBackendRole: typeof import("./getAuthBackendRole").getAuthBackendRole;
|
|
9
9
|
export declare const getAuthBackendRoleOutput: typeof import("./getAuthBackendRole").getAuthBackendRoleOutput;
|
|
10
|
+
export { GetKmsVerifyArgs, GetKmsVerifyResult, GetKmsVerifyOutputArgs } from "./getKmsVerify";
|
|
11
|
+
export declare const getKmsVerify: typeof import("./getKmsVerify").getKmsVerify;
|
|
12
|
+
export declare const getKmsVerifyOutput: typeof import("./getKmsVerify").getKmsVerifyOutput;
|
|
13
|
+
export { KmsSecretBackendArgs, KmsSecretBackendState } from "./kmsSecretBackend";
|
|
14
|
+
export type KmsSecretBackend = import("./kmsSecretBackend").KmsSecretBackend;
|
|
15
|
+
export declare const KmsSecretBackend: typeof import("./kmsSecretBackend").KmsSecretBackend;
|
|
16
|
+
export { KmsSecretBackendKeyArgs, KmsSecretBackendKeyState } from "./kmsSecretBackendKey";
|
|
17
|
+
export type KmsSecretBackendKey = import("./kmsSecretBackendKey").KmsSecretBackendKey;
|
|
18
|
+
export declare const KmsSecretBackendKey: typeof import("./kmsSecretBackendKey").KmsSecretBackendKey;
|
|
10
19
|
export { SecretBackendArgs, SecretBackendState } from "./secretBackend";
|
|
11
20
|
export type SecretBackend = import("./secretBackend").SecretBackend;
|
|
12
21
|
export declare const SecretBackend: typeof import("./secretBackend").SecretBackend;
|
package/gcp/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../gcp/index.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAClE,MAAM,MAAM,WAAW,GAAG,OAAO,eAAe,EAAE,WAAW,CAAC;AAC9D,eAAO,MAAM,WAAW,EAAE,cAAc,eAAe,EAAE,WAAyB,CAAC;AAGnF,OAAO,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAC9E,MAAM,MAAM,eAAe,GAAG,OAAO,mBAAmB,EAAE,eAAe,CAAC;AAC1E,eAAO,MAAM,eAAe,EAAE,cAAc,mBAAmB,EAAE,eAA6B,CAAC;AAG/F,OAAO,EAAE,sBAAsB,EAAE,wBAAwB,EAAE,4BAA4B,EAAE,MAAM,sBAAsB,CAAC;AACtH,eAAO,MAAM,kBAAkB,EAAE,cAAc,sBAAsB,EAAE,kBAAgC,CAAC;AACxG,eAAO,MAAM,wBAAwB,EAAE,cAAc,sBAAsB,EAAE,wBAAsC,CAAC;AAGpH,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AACxE,MAAM,MAAM,aAAa,GAAG,OAAO,iBAAiB,EAAE,aAAa,CAAC;AACpE,eAAO,MAAM,aAAa,EAAE,cAAc,iBAAiB,EAAE,aAA2B,CAAC;AAGzF,OAAO,EAAE,6BAA6B,EAAE,8BAA8B,EAAE,MAAM,6BAA6B,CAAC;AAC5G,MAAM,MAAM,yBAAyB,GAAG,OAAO,6BAA6B,EAAE,yBAAyB,CAAC;AACxG,eAAO,MAAM,yBAAyB,EAAE,cAAc,6BAA6B,EAAE,yBAAuC,CAAC;AAG7H,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AACxE,MAAM,MAAM,aAAa,GAAG,OAAO,iBAAiB,EAAE,aAAa,CAAC;AACpE,eAAO,MAAM,aAAa,EAAE,cAAc,iBAAiB,EAAE,aAA2B,CAAC;AAGzF,OAAO,EAAE,uBAAuB,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AAC1F,MAAM,MAAM,mBAAmB,GAAG,OAAO,uBAAuB,EAAE,mBAAmB,CAAC;AACtF,eAAO,MAAM,mBAAmB,EAAE,cAAc,uBAAuB,EAAE,mBAAiC,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../gcp/index.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAClE,MAAM,MAAM,WAAW,GAAG,OAAO,eAAe,EAAE,WAAW,CAAC;AAC9D,eAAO,MAAM,WAAW,EAAE,cAAc,eAAe,EAAE,WAAyB,CAAC;AAGnF,OAAO,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAC9E,MAAM,MAAM,eAAe,GAAG,OAAO,mBAAmB,EAAE,eAAe,CAAC;AAC1E,eAAO,MAAM,eAAe,EAAE,cAAc,mBAAmB,EAAE,eAA6B,CAAC;AAG/F,OAAO,EAAE,sBAAsB,EAAE,wBAAwB,EAAE,4BAA4B,EAAE,MAAM,sBAAsB,CAAC;AACtH,eAAO,MAAM,kBAAkB,EAAE,cAAc,sBAAsB,EAAE,kBAAgC,CAAC;AACxG,eAAO,MAAM,wBAAwB,EAAE,cAAc,sBAAsB,EAAE,wBAAsC,CAAC;AAGpH,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAC9F,eAAO,MAAM,YAAY,EAAE,cAAc,gBAAgB,EAAE,YAA0B,CAAC;AACtF,eAAO,MAAM,kBAAkB,EAAE,cAAc,gBAAgB,EAAE,kBAAgC,CAAC;AAGlG,OAAO,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AACjF,MAAM,MAAM,gBAAgB,GAAG,OAAO,oBAAoB,EAAE,gBAAgB,CAAC;AAC7E,eAAO,MAAM,gBAAgB,EAAE,cAAc,oBAAoB,EAAE,gBAA8B,CAAC;AAGlG,OAAO,EAAE,uBAAuB,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AAC1F,MAAM,MAAM,mBAAmB,GAAG,OAAO,uBAAuB,EAAE,mBAAmB,CAAC;AACtF,eAAO,MAAM,mBAAmB,EAAE,cAAc,uBAAuB,EAAE,mBAAiC,CAAC;AAG3G,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AACxE,MAAM,MAAM,aAAa,GAAG,OAAO,iBAAiB,EAAE,aAAa,CAAC;AACpE,eAAO,MAAM,aAAa,EAAE,cAAc,iBAAiB,EAAE,aAA2B,CAAC;AAGzF,OAAO,EAAE,6BAA6B,EAAE,8BAA8B,EAAE,MAAM,6BAA6B,CAAC;AAC5G,MAAM,MAAM,yBAAyB,GAAG,OAAO,6BAA6B,EAAE,yBAAyB,CAAC;AACxG,eAAO,MAAM,yBAAyB,EAAE,cAAc,6BAA6B,EAAE,yBAAuC,CAAC;AAG7H,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AACxE,MAAM,MAAM,aAAa,GAAG,OAAO,iBAAiB,EAAE,aAAa,CAAC;AACpE,eAAO,MAAM,aAAa,EAAE,cAAc,iBAAiB,EAAE,aAA2B,CAAC;AAGzF,OAAO,EAAE,uBAAuB,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AAC1F,MAAM,MAAM,mBAAmB,GAAG,OAAO,uBAAuB,EAAE,mBAAmB,CAAC;AACtF,eAAO,MAAM,mBAAmB,EAAE,cAAc,uBAAuB,EAAE,mBAAiC,CAAC"}
|
package/gcp/index.js
CHANGED
|
@@ -25,7 +25,7 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
|
25
25
|
return result;
|
|
26
26
|
};
|
|
27
27
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
28
|
-
exports.SecretStaticAccount = exports.SecretRoleset = exports.SecretImpersonatedAccount = exports.SecretBackend = exports.getAuthBackendRoleOutput = exports.getAuthBackendRole = exports.AuthBackendRole = exports.AuthBackend = void 0;
|
|
28
|
+
exports.SecretStaticAccount = exports.SecretRoleset = exports.SecretImpersonatedAccount = exports.SecretBackend = exports.KmsSecretBackendKey = exports.KmsSecretBackend = exports.getKmsVerifyOutput = exports.getKmsVerify = exports.getAuthBackendRoleOutput = exports.getAuthBackendRole = exports.AuthBackendRole = exports.AuthBackend = void 0;
|
|
29
29
|
const pulumi = __importStar(require("@pulumi/pulumi"));
|
|
30
30
|
const utilities = __importStar(require("../utilities"));
|
|
31
31
|
exports.AuthBackend = null;
|
|
@@ -35,6 +35,13 @@ utilities.lazyLoad(exports, ["AuthBackendRole"], () => require("./authBackendRol
|
|
|
35
35
|
exports.getAuthBackendRole = null;
|
|
36
36
|
exports.getAuthBackendRoleOutput = null;
|
|
37
37
|
utilities.lazyLoad(exports, ["getAuthBackendRole", "getAuthBackendRoleOutput"], () => require("./getAuthBackendRole"));
|
|
38
|
+
exports.getKmsVerify = null;
|
|
39
|
+
exports.getKmsVerifyOutput = null;
|
|
40
|
+
utilities.lazyLoad(exports, ["getKmsVerify", "getKmsVerifyOutput"], () => require("./getKmsVerify"));
|
|
41
|
+
exports.KmsSecretBackend = null;
|
|
42
|
+
utilities.lazyLoad(exports, ["KmsSecretBackend"], () => require("./kmsSecretBackend"));
|
|
43
|
+
exports.KmsSecretBackendKey = null;
|
|
44
|
+
utilities.lazyLoad(exports, ["KmsSecretBackendKey"], () => require("./kmsSecretBackendKey"));
|
|
38
45
|
exports.SecretBackend = null;
|
|
39
46
|
utilities.lazyLoad(exports, ["SecretBackend"], () => require("./secretBackend"));
|
|
40
47
|
exports.SecretImpersonatedAccount = null;
|
|
@@ -51,6 +58,10 @@ const _module = {
|
|
|
51
58
|
return new exports.AuthBackend(name, undefined, { urn });
|
|
52
59
|
case "vault:gcp/authBackendRole:AuthBackendRole":
|
|
53
60
|
return new exports.AuthBackendRole(name, undefined, { urn });
|
|
61
|
+
case "vault:gcp/kmsSecretBackend:KmsSecretBackend":
|
|
62
|
+
return new exports.KmsSecretBackend(name, undefined, { urn });
|
|
63
|
+
case "vault:gcp/kmsSecretBackendKey:KmsSecretBackendKey":
|
|
64
|
+
return new exports.KmsSecretBackendKey(name, undefined, { urn });
|
|
54
65
|
case "vault:gcp/secretBackend:SecretBackend":
|
|
55
66
|
return new exports.SecretBackend(name, undefined, { urn });
|
|
56
67
|
case "vault:gcp/secretImpersonatedAccount:SecretImpersonatedAccount":
|
|
@@ -66,6 +77,8 @@ const _module = {
|
|
|
66
77
|
};
|
|
67
78
|
pulumi.runtime.registerResourceModule("vault", "gcp/authBackend", _module);
|
|
68
79
|
pulumi.runtime.registerResourceModule("vault", "gcp/authBackendRole", _module);
|
|
80
|
+
pulumi.runtime.registerResourceModule("vault", "gcp/kmsSecretBackend", _module);
|
|
81
|
+
pulumi.runtime.registerResourceModule("vault", "gcp/kmsSecretBackendKey", _module);
|
|
69
82
|
pulumi.runtime.registerResourceModule("vault", "gcp/secretBackend", _module);
|
|
70
83
|
pulumi.runtime.registerResourceModule("vault", "gcp/secretImpersonatedAccount", _module);
|
|
71
84
|
pulumi.runtime.registerResourceModule("vault", "gcp/secretRoleset", _module);
|
package/gcp/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../gcp/index.ts"],"names":[],"mappings":";AAAA,sEAAsE;AACtE,iFAAiF;;;;;;;;;;;;;;;;;;;;;;;;;;AAEjF,uDAAyC;AACzC,wDAA0C;AAK7B,QAAA,WAAW,GAA+C,IAAW,CAAC;AACnF,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,aAAa,CAAC,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC;AAIhE,QAAA,eAAe,GAAuD,IAAW,CAAC;AAC/F,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,iBAAiB,CAAC,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC,CAAC;AAGxE,QAAA,kBAAkB,GAA6D,IAAW,CAAC;AAC3F,QAAA,wBAAwB,GAAmE,IAAW,CAAC;AACpH,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,oBAAoB,EAAC,0BAA0B,CAAC,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,sBAAsB,CAAC,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../gcp/index.ts"],"names":[],"mappings":"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"}
|