summaryrefslogtreecommitdiff
path: root/vendor/github.com/99designs/keyring/README.md
diff options
context:
space:
mode:
authormo khan <mo@mokhan.ca>2025-07-22 17:35:49 -0600
committermo khan <mo@mokhan.ca>2025-07-22 17:35:49 -0600
commit20ef0d92694465ac86b550df139e8366a0a2b4fa (patch)
tree3f14589e1ce6eb9306a3af31c3a1f9e1af5ed637 /vendor/github.com/99designs/keyring/README.md
parent44e0d272c040cdc53a98b9f1dc58ae7da67752e6 (diff)
feat: connect to spicedb
Diffstat (limited to 'vendor/github.com/99designs/keyring/README.md')
-rw-r--r--vendor/github.com/99designs/keyring/README.md67
1 files changed, 67 insertions, 0 deletions
diff --git a/vendor/github.com/99designs/keyring/README.md b/vendor/github.com/99designs/keyring/README.md
new file mode 100644
index 0000000..629a6aa
--- /dev/null
+++ b/vendor/github.com/99designs/keyring/README.md
@@ -0,0 +1,67 @@
+Keyring
+=======
+[![Build Status](https://github.com/99designs/keyring/workflows/Continuous%20Integration/badge.svg)](https://github.com/99designs/keyring/actions)
+[![Documentation](https://godoc.org/github.com/99designs/keyring?status.svg)](https://godoc.org/github.com/99designs/keyring)
+
+Keyring provides a common interface to a range of secure credential storage services. Originally developed as part of [AWS Vault](https://github.com/99designs/aws-vault), a command line tool for securely managing AWS access from developer workstations.
+
+Currently Keyring supports the following backends
+ * [macOS Keychain](https://support.apple.com/en-au/guide/keychain-access/welcome/mac)
+ * [Windows Credential Manager](https://support.microsoft.com/en-au/help/4026814/windows-accessing-credential-manager)
+ * Secret Service ([Gnome Keyring](https://wiki.gnome.org/Projects/GnomeKeyring), [KWallet](https://kde.org/applications/system/org.kde.kwalletmanager5))
+ * [KWallet](https://kde.org/applications/system/org.kde.kwalletmanager5)
+ * [Pass](https://www.passwordstore.org/)
+ * [Encrypted file (JWT)](https://datatracker.ietf.org/doc/html/rfc7519)
+ * [KeyCtl](https://linux.die.net/man/1/keyctl)
+
+
+## Usage
+
+The short version of how to use keyring is shown below.
+
+```go
+ring, _ := keyring.Open(keyring.Config{
+ ServiceName: "example",
+})
+
+_ = ring.Set(keyring.Item{
+ Key: "foo",
+ Data: []byte("secret-bar"),
+})
+
+i, _ := ring.Get("foo")
+
+fmt.Printf("%s", i.Data)
+```
+
+For more detail on the API please check [the keyring godocs](https://godoc.org/github.com/99designs/keyring)
+
+
+## Testing
+
+[Vagrant](https://www.vagrantup.com/) is used to create linux and windows test environments.
+
+```bash
+# Start vagrant
+vagrant up
+
+# Run go tests on all platforms
+./bin/go-test
+```
+
+
+## Contributing
+
+Contributions to the keyring package are most welcome from engineers of all backgrounds and skill levels. In particular the addition of extra backends across popular operating systems would be appreciated.
+
+This project will adhere to the [Go Community Code of Conduct](https://golang.org/conduct) in the github provided discussion spaces, with the moderators being the 99designs engineering team.
+
+To make a contribution:
+
+ * Fork the repository
+ * Make your changes on the fork
+ * Submit a pull request back to this repo with a clear description of the problem you're solving
+ * Ensure your PR passes all current (and new) tests
+ * Ideally verify that [aws-vault](https://github.com/99designs/aws-vault) works with your changes (optional)
+
+...and we'll do our best to get your work merged in