Skip to content

Commit 4036bcf

Browse files
committed
Add KMS samples.
1 parent 819075a commit 4036bcf

File tree

11 files changed

+2062
-9
lines changed

11 files changed

+2062
-9
lines changed

README.md

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,8 +47,10 @@ on Google Cloud Platform.
4747
* [Stackdriver Logging](#stackdriver-logging)
4848
* [Stackdriver Monitoring](#stackdriver-monitoring)
4949
* [Stackdriver Trace](#stackdriver-trace)
50-
* [**Networking**](#management-tools)
50+
* [**Networking**](#networking)
5151
* [Google Cloud DNS](#google-cloud-dns)
52+
* [**Identity and Security**](#identity-and-security)
53+
* [Google Cloud Key Management Service](#google-cloud-key-management-service)
5254
* [Other sample applications](#other-sample-applications)
5355
* [Bookshelf tutorial app](#bookshelf-tutorial-app)
5456
* [LabelCat](#labelcat)
@@ -382,6 +384,20 @@ View the [Google Cloud DNS Node.js sample][dns_sample].
382384
[dns_docs]: https://cloud.google.com/dns/docs/
383385
[dns_sample]: dns
384386

387+
### Identity and Security
388+
389+
#### Google Cloud Key Management Service
390+
391+
The [Cloud KMS API][kms_docs] is a service that allows you to keep encryption
392+
keys centrally in the cloud, for direct use by cloud services.
393+
394+
[kms_docs]: https://cloud.google.com/kms/docs/
395+
396+
View the [Google Cloud Key Management Service Node.js sample][kms_sample].
397+
398+
[kms_docs]: https://cloud.google.com/kms/docs/
399+
[kms_sample]: dns
400+
385401
## Other sample applications
386402

387403
### Bookshelf tutorial app

circle.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -71,6 +71,6 @@ dependencies:
7171
# Run your tests
7272
test:
7373
override:
74-
- yarn run all-cover
74+
- node scripts/test
7575
post:
76-
- nyc report --reporter=lcov > coverage.lcov && codecov
76+
- nyc report --reporter=lcov > coverage.lcov && codecov || true

kms/README.md

Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,3 +35,55 @@ Run the sample:
3535

3636
[quickstart_docs]: https://cloud.google.com/kms/docs
3737
[quickstart_code]: hostedmodels.js
38+
39+
### Keys
40+
41+
View the [documentation][keys_docs] or the [source code][keys_code].
42+
43+
__Usage:__ `node keys.js --help`
44+
45+
```
46+
Commands:
47+
create <keyRingName> <keyName> Creates a crypto key.
48+
decrypt <keyRingName> <keyName> <infile> <outfile> Decrypts a file.
49+
encrypt <keyRingName> <keyName> <infile> <outfile> Encrypts a file.
50+
get <keyRingName> <keyName> Gets a crypto key.
51+
get-policy <keyRingName> <keyName> Gets a crypto key's IAM policy.
52+
grant-access <keyRingName> <keyName> <member> <role> Adds a members to a crypto key's IAM policy.
53+
keyrings <command> Access key rings subcommands.
54+
list <keyRingName> Lists crypto keys.
55+
revoke-access <keyRingName> <keyName> <member> <role> Removes a member from a crypto key's IAM policy.
56+
set-primary <keyRingName> <keyName> <version> Sets a crypto key's primary version.
57+
versions <command> Access crypto key versions subcommands.
58+
59+
Options:
60+
--help Show help [boolean]
61+
--location, -l [string] [default: "global"]
62+
--projectId, -p [string]
63+
64+
Examples:
65+
node keys.js keyrings create "my-key-ring"
66+
node keys.js keyrings list
67+
node keys.js keyrings get-policy "my-key-ring"
68+
node keys.js keyrings grant-access "my-key-ring" "user:[email protected]" "roles/viewer"
69+
node keys.js keyrings revoke-access "my-key-ring" "user:[email protected]" "roles/viewer"
70+
node keys.js create "my-key-ring" "my-key"
71+
node keys.js list
72+
node keys.js encrypt "my-key-ring" "my-key" ./resources/plaintext.txt ./resources/plaintext.txt.encrypted
73+
node keys.js decrypt "my-key-ring" "my-key" ./resources/plaintext.txt.encrypted ./resources/plaintext.txt.decrypted
74+
node keys.js set-primary "my-key-ring" "my-key" 123
75+
node keys.js get-policy "my-key-ring" "my-key"
76+
node keys.js grant-access "my-key-ring" "my-key" "user:[email protected]" "roles/viewer"
77+
node keys.js revoke-access "my-key-ring" "my-key" "user:[email protected]" "roles/viewer"
78+
node keys.js versions create "my-key-ring" "my-key"
79+
node keys.js versions list "my-key-ring" "my-key"
80+
node keys.js versions destroy "my-key-ring" "my-key" 123
81+
node keys.js versions restore "my-key-ring" "my-key" 123
82+
node keys.js versions disable "my-key-ring" "my-key" 123
83+
node keys.js versions enable "my-key-ring" "my-key" 123
84+
85+
For more information, see https://cloud.google.com/kms/docs
86+
```
87+
88+
[keys_docs]: https://cloud.google.com/kms/docs
89+
[keys_code]: keys.js

0 commit comments

Comments
 (0)