-
Notifications
You must be signed in to change notification settings - Fork 35
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Secret Store #210
Secret Store #210
Conversation
Viceroy is being updated with support for a new `local_server.secret_store` configuration section. This change adds support for this new section in the manifest. Viceroy change: fastly/Viceroy#210 Related change: #717
Viceroy is being updated with a new `local_server.secret_store` configuration section. Viceroy change: fastly/Viceroy#210 This change adds support for the new Secret Store configuration section. Related change: #717
Viceroy is being updated with a new `local_server.secret_store` configuration section. Viceroy change: fastly/Viceroy#210 This change adds support for the new Secret Store configuration section. Related change: #717
Hey @joeshaw I took a look and this is amazingly well done. I do see it's trying to merge it into the |
@mgattozzi Sounds good! Yeah, I wasn't planning this land this until the other branch has landed. Once that branch is landed, this PR should automatically re-target |
Adding a reminder for us to update https://developer.fastly.com/reference/compute/fastly-toml/#local-server |
d324cb9
to
b642740
Compare
640fe10
to
17fdd6e
Compare
17fdd6e
to
080f558
Compare
@mgattozzi With #203 having been merged and the 0.9.1 Rust SDK having been tagged, this should be ready to merge. |
This introduces types and hostcalls for the Secret Store, and implements them in Viceroy, along with configuration to instantiate them. In Compute@Edge, a Secret Store is an encrypted, read-only key-value store for sensitive data. In Viceroy, however, it is a simple unencrypted in-memory map defined in the `fastly.toml` file in a manner similar to Object Stores. At a high level, a Wasm application using the APIs would: 1. Open a secret store by name 2. Get a secret from the store by name 3. Decrypt the secret by calling its `plaintext` method. In Viceroy, Secret Stores are configured in the same way Object Stores are: ```toml [local_server] [local_server.secret_store] store_one = [{key = "first", data = "This is some secret data"}, {key = "second", path = "/path/to/secret.json"}] [[local_server.secret_store.store_two]] key = "first" data = "This is also some secret data" [[local_server.secret_store.store_two]] key = "second" path = "/path/to/other/secret.json" ```
080f558
to
b85d3d8
Compare
Rebased on |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@joeshaw thanks for rebasing things and getting it set to merge into main. I think this is ready to go!
This introduces types and hostcalls for the Secret Store, and implements
them in Viceroy, along with configuration to instantiate them.
In Compute@Edge, a Secret Store is an encrypted, read-only key-value
store for sensitive data. In Viceroy, however, it is a simple
unencrypted in-memory map defined in the
fastly.toml
file in amanner similar to Object Stores.
At a high level, a Wasm application using the APIs would:
plaintext
method.In Viceroy, Secret Stores are configured in the same way Object Stores
are: