https://github.com/fastlane-community/security
A Ruby library for interacting with the macOS Keychain
https://github.com/fastlane-community/security
Keywords from Contributors
apps deployment fastlane screenshots feature-flag
Last synced: about 12 hours ago
JSON representation
Repository metadata
A Ruby library for interacting with the macOS Keychain
- Host: GitHub
- URL: https://github.com/fastlane-community/security
- Owner: fastlane-community
- License: mit
- Created: 2012-07-21T20:00:48.000Z (about 14 years ago)
- Default Branch: main
- Last Pushed: 2026-09-21T10:17:53.000Z (14 days ago)
- Last Synced: 2026-09-21T21:11:04.998Z (14 days ago)
- Language: Ruby
- Homepage:
- Size: 64.5 KB
- Stars: 55
- Watchers: 2
- Forks: 10
- Open Issues: 0
- Releases: 3
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
- Security: security.gemspec
README.md
Security
A library for interacting with the macOS Keychain
This library provides only a subset of
securitysubcommands,
and is not intended for general use.
Usage
require 'security'
Security::Keychain.default_keychain.filename #=> "/Users/jappleseed/Library/Keychains/login.keychain-db"
item = Security::InternetPassword.find(server: "itunesconnect.apple.com")
item&.password #=> "p4ssw0rd"
Keychains
find, add and delete all take an optional keychain:, naming the keychain
to act on. It accepts a Security::Keychain or a path. Without one, security
adds to the default keychain and searches the default search list.
keychain = Security::Keychain.new("/path/to/build.keychain-db")
Security::InternetPassword.add("example.com", "jappleseed", "p4ssw0rd", keychain: keychain)
Security::InternetPassword.find(server: "example.com", keychain: keychain)
Security::InternetPassword.delete(server: "example.com", keychain: keychain)
Errors
The security command line tool reports failures through its exit status, and
this library distinguishes the two cases a caller needs to tell apart:
- Nothing matched.
findreturnsnil. The keychain answered, and it holds
no such item. - The question could not be answered.
findraisesSecurity::Error,
carrying the tool's exitstatusand itsoutput. A locked keychain, a
keychain this process is not allowed to read, or a malformed request all
land here.
begin
item = Security::InternetPassword.find(server: "itunesconnect.apple.com")
rescue Security::Error => e
warn "could not read the keychain: #{e.message}"
item = nil
end
Keychain.list, Keychain.default_keychain and Keychain.login_keychain
raise Security::Error on failure in the same way.
The methods that change the keychain — add, delete, and the Keychain
instance methods — return true or false and print what the tool reported,
the way Kernel#system does.
License
Owner metadata
- Name: fastlane Community
- Login: fastlane-community
- Email:
- Kind: organization
- Description: 🚀 Quality maintained plugins from the fastlane community
- Website: https://github.com/fastlane-community/README
- Location: Fastfile
- Twitter:
- Company:
- Icon url: https://avatars.githubusercontent.com/u/50630777?v=4
- Repositories: 19
- Last ynced at: 2026-10-02T13:59:37.768Z
- Profile URL: https://github.com/fastlane-community
GitHub Events
Total
- Delete event: 1
- Issue comment event: 1
- Push event: 4
Last Year
- Delete event: 1
- Issue comment event: 1
- Push event: 4
Committers metadata
Last synced: 1 day ago
Total Commits: 53
Total Committers: 7
Avg Commits per committer: 7.571
Development Distribution Score (DDS): 0.472
Commits in past year: 21
Committers in past year: 3
Avg Commits per committer in past year: 7.0
Development Distribution Score (DDS) in past year: 0.524
| Name | Commits | |
|---|---|---|
| Mattt | m****t@m****m | 28 |
| Jerome Lacoste | j****e@g****m | 10 |
| Connor Tumbleson | i****s | 10 |
| Josh Holtz | j****h@r****m | 2 |
| jamie | j****s@g****m | 1 |
| dependabot[bot] | 4****] | 1 |
| Nicolas Bachschmidt | n****s@n****t | 1 |
Committer domains:
- nunk.net: 1
- rokkincat.com: 1
- me.com: 1
Issue and Pull Request metadata
Last synced: 1 day ago
Total issues: 7
Total pull requests: 35
Average time to close issues: over 4 years
Average time to close pull requests: 3 months
Total issue authors: 3
Total pull request authors: 6
Average comments per issue: 0.29
Average comments per pull request: 0.46
Merged pull request: 27
Bot issues: 0
Bot pull requests: 1
Past year issues: 3
Past year pull requests: 27
Past year average time to close issues: about 11 hours
Past year average time to close pull requests: about 6 hours
Past year issue authors: 2
Past year pull request authors: 3
Past year average comments per issue: 0.67
Past year average comments per pull request: 0.26
Past year merged pull request: 20
Past year bot issues: 0
Past year bot pull requests: 1
Top Issue Authors
- lacostej (5)
- baarde (1)
- iBotPeaches (1)
Top Pull Request Authors
- lacostej (16)
- iBotPeaches (11)
- mattt (4)
- baarde (2)
- dependabot[bot] (1)
- jwillis (1)
Top Issue Labels
Top Pull Request Labels
- ruby (1)
- dependencies (1)
Package metadata
- Total packages: 3
-
Total downloads:
- rubygems: 274,049,456 total
- Total docker downloads: 84,875,766
- Total dependent packages: 31 (may contain duplicates)
- Total dependent repositories: 20,964 (may contain duplicates)
- Total versions: 21
- Total maintainers: 2
gem.coop: security
Interact with the macOS Keychain
- Homepage: https://github.com/fastlane-community/security
- Documentation: http://www.rubydoc.info/gems/security/
- Licenses: MIT
- Latest release: 0.3.0 (published 23 days ago)
- Last Synced: 2026-10-04T06:00:39.037Z (1 day ago)
- Versions: 9
- Dependent Packages: 0
- Dependent Repositories: 0
- Downloads: 137,024,728 Total
- Docker Downloads: 42,437,883
-
Rankings:
- Dependent repos count: 0.0%
- Dependent packages count: 0.0%
- Average: 0.077%
- Downloads: 0.232%
- Maintainers (2)
rubygems.org: security
Interact with the macOS Keychain
- Homepage: https://github.com/fastlane-community/security
- Documentation: http://www.rubydoc.info/gems/security/
- Licenses: MIT
- Latest release: 0.3.0 (published 23 days ago)
- Last Synced: 2026-10-04T06:00:39.228Z (1 day ago)
- Versions: 9
- Dependent Packages: 31
- Dependent Repositories: 20,964
- Downloads: 137,024,728 Total
- Docker Downloads: 42,437,883
-
Rankings:
- Dependent repos count: 0.246%
- Downloads: 0.337%
- Dependent packages count: 0.765%
- Docker downloads count: 0.774%
- Average: 2.931%
- Stargazers count: 7.461%
- Forks count: 7.999%
- Maintainers (2)
proxy.golang.org: github.com/fastlane-community/security
- Homepage:
- Documentation: https://pkg.go.dev/github.com/fastlane-community/security#section-documentation
- Licenses: mit
- Latest release: v0.3.0 (published 22 days ago)
- Last Synced: 2026-10-04T06:00:41.993Z (1 day ago)
- Versions: 3
- Dependent Packages: 0
- Dependent Repositories: 0
-
Rankings:
- Dependent packages count: 4.811%
- Average: 4.973%
- Dependent repos count: 5.135%
Dependencies
- rake ~> 12.3, >= 12.3.3 development
- rspec >= 0 development
- rspec-github >= 0 development
- rubocop >= 0 development
- actions/checkout v7 composite
- ruby/setup-ruby v1 composite
- rubygems/release-gem v1 composite
- actions/checkout v2 composite
- ruby/setup-ruby v1 composite
Score: 25.65192923650368