\{/* Trang này được tạo tự động từ SKILL.md của kỹ năng bởi website/scripts/generate-skill-docs.py. Chỉnh sửa nguồn SKILL.md, không phải trang này. */}
1Mật khẩu
Thiết lập và sử dụng 1Password CLI (op). Sử dụng khi cài đặt CLI, cho phép tích hợp ứng dụng trên máy tính để bàn, đăng nhập và đọc/chèn bí mật cho lệnh.
Siêu dữ liệu kỹ năng
| Nguồn | Tùy chọn — cài đặt với |
| `Hermes skills install official/security/1password | |
| ` | |
| Đường dẫn |
optional-skills/security/1password ` | | Phiên bản |
1.0.0 ` | | Tác giả | arceus77-7, được tăng cường bởi Đặc vụ Hermes | | Giấy phép | MIT | | Nền tảng | Linux, macOS, Windows | | Thẻ |
security
, `secrets
, `1password
, `op
,
CLI |
Tham khảo: đầy đủ SKILL.md
Sau đây là định nghĩa kỹ năng đầy đủ mà Hermes tải khi kỹ năng này được kích hoạt. Đây là những gì tác nhân coi là hướng dẫn khi kỹ năng được kích hoạt.
1Mật khẩu CLI
Sử dụng kỹ năng này khi người dùng muốn các bí mật được quản lý thông qua 1Password thay vì các tệp hoặc tệp env văn bản gốc.
Yêu cầu
- 1 tài khoản mật khẩu
- Đã cài đặt 1Password CLI ( `op
)
- Một trong: tích hợp ứng dụng máy tính để bàn, mã thông báo tài khoản dịch vụ ( `OP_SERVICE_ACCOUNT_TOKEN
) hoặc máy chủ Connect
tmux có sẵn cho các phiên xác thực ổn định trong các cuộc gọi terminal Hermes (chỉ luồng ứng dụng trên máy tính để bàn)
Khi nào nên sử dụng
-
Cài đặt hoặc cấu hình 1Password CLI
-
Đăng nhập bằng `op signin
-
Đọc các tài liệu tham khảo bí mật như `op://Vault/Item/field
-
Đưa bí mật vào cấu hình/mẫu bằng `op inject
-
Chạy lệnh với các biến env bí mật thông qua `op run
Phương thức xác thực
Tài khoản dịch vụ (được khuyến nghị cho Hermes)
Đặt
OP_SERVICE_ACCOUNT_TOKEN trong
~/.Hermes/.env
(kỹ năng sẽ nhắc điều này trong lần tải đầu tiên). Không cần ứng dụng máy tính để bàn. Hỗ trợ op read
, `op inject
, `op run
.
export OP_SERVICE_ACCOUNT_TOKEN="your-token-here"
op whoami # verify — should show Type: SERVICE_ACCOUNT
`
### Tích hợp ứng dụng máy tính để bàn (tương tác)
1. Kích hoạt trong ứng dụng máy tính để bàn 1Password: Cài đặt → Nhà phát triển → Tích hợp với 1Password CLI
2. Đảm bảo ứng dụng đã được mở khóa
3. Chạy
`op signin
` và phê duyệt lời nhắc sinh trắc học
### Connect Server (tự lưu trữ)
``` bash
export OP_CONNECT_HOST="http://localhost:8080"
export OP_CONNECT_TOKEN="your-connect-token"
`
## Thiết lập
1. Cài đặt CLI:
`bash
# macOS
brew install 1password-CLI
# Linux (official package/install docs)
# See references/get-started.md for distro-specific links.
# Windows (winget)
winget install AgileBits.1Password.CLI
`
2. Xác minh:
``` bash
op --version
`
3. Chọn phương thức xác thực ở trên và định cấu hình nó.
## Mẫu thực thi Hermes (luồng ứng dụng trên máy tính để bàn)
Các lệnh đầu cuối của Hermes không tương tác theo mặc định và có thể mất ngữ cảnh xác thực giữa các lệnh gọi.
Để sử dụng
`op
` đáng tin cậy với tích hợp ứng dụng máy tính để bàn, hãy chạy các hoạt động đăng nhập và bí mật bên trong phiên tmux chuyên dụng.
Lưu ý: Điều này KHÔNG cần thiết khi sử dụng
`OP_SERVICE_ACCOUNT_TOKEN
- mã thông báo vẫn tự động tồn tại trong các cuộc gọi đầu cuối.
`bash
SOCKET_DIR="$\\\{TMPDIR:-/tmp}/Hermes-tmux-sockets"
mkdir -p "$SOCKET_DIR"
SOCKET="$SOCKET_DIR/Hermes-op.sock"
SESSION="op-auth-$(date +%Y%m%d-%H%M%S)"`tmux -S "$SOCKET" new -d -s "$SESSION" -n shell
# Sign in (approve in desktop app when prompted)
tmux -S "$SOCKET" send-keys -t "$SESSION":0.0 -- "eval \"\$(op signin --account my.1password.com)\"" Enter
# Verify auth
tmux -S "$SOCKET" send-keys -t "$SESSION":0.0 -- "op whoami" Enter
# Example read
tmux -S "$SOCKET" send-keys -t "$SESSION":0.0 -- "op read 'op://Private/npmjs/one-time password?attribute=otp'" Enter
# Capture output when needed
tmux -S "$SOCKET" capture-pane -p -J -t "$SESSION":0.0 -S -200
# Cleanup
tmux -S "$SOCKET" kill-session -t "$SESSION"
`
## Hoạt động chung
### Đọc một bí mật
`bash
op read "op://app-prod/db/password"
`
### Nhận OTP
`bash
op read "op://app-prod/npm/one-time password?attribute=otp"
`
### Đưa vào mẫu
`bash
echo "db_password: \\\{\\{ op://app-prod/db/password }}" | op inject
`
### Chạy lệnh với bí mật env var
`bash
export DB_PASSWORD="op://app-prod/db/password"
op run -- sh -c '[ -n "$DB_PASSWORD" ] && echo "DB_PASSWORD is set" || echo "DB_PASSWORD missing"'
`
## Lan can
- Không bao giờ in lại các bí mật thô cho người dùng trừ khi họ yêu cầu giá trị một cách rõ ràng.
- Ưu tiên
`op run
` /
`op inject
` thay vì ghi bí mật vào tập tin.
- Nếu lệnh không thành công với "tài khoản chưa được đăng nhập", hãy chạy lại
`op signin
` trong cùng một phiên tmux.
- Nếu tích hợp ứng dụng dành cho máy tính để bàn không khả dụng (headless/CI), hãy sử dụng luồng mã thông báo tài khoản dịch vụ.
## CI / Ghi chú không đầu
Để sử dụng không tương tác, hãy xác thực bằng
`OP_SERVICE_ACCOUNT_TOKEN
` và tránh
`op signin
` tương tác.
Tài khoản dịch vụ yêu cầu CLI v2.18.0+.
## Tài liệu tham khảo
-
`references/get-started.md
-
`references/CLI-examples.md
- https://developer.1password.com/docs/CLI/
- https://developer.1password.com/docs/service-accounts/