Kho tiền Hashicorp Python sdk

Ở bài trước [ How to hide Password/API Key in Python Script] mình có sử dụng “keyring” để lưu trữ API Key cho Python script. Chúng tôi cũng có thể sử dụng Hashicorp Vault để lưu trữ các thông tin xác thực đó. Có một mô-đun python có tên HVAC [ Python Client for Hashicorp Vault] có thể được sử dụng để truy xuất các khóa API/Thông tin xác thực từ kho tiền

Trước tiên, chúng tôi cần đảm bảo rằng Vault đang hoạt động bình thường và chúng tôi có khóa API được lưu trữ trong kho tiền. Trong ví dụ này, tôi đã lưu trữ khóa API Meraki của mình

Trước khi chúng tôi bắt đầu với bộ lưu trữ thực tế, hãy thảo luận ngắn gọn về bí mật là gì và tại sao chúng tôi có thể cần phải quản lý chúng. Hầu hết các ứng dụng ngày nay được lưu trữ trên kiến ​​trúc dựa trên đám mây vì nhiều lý do. Dù là tại chỗ hay trên đám mây, bạn có thể phải lưu trữ bí mật của mình trong một môi trường an toàn

Bí mật là gì?

Bí mật là dữ liệu kỹ thuật số bao gồm nhưng không giới hạn ở những điều sau đây

  • mật khẩu người dùng
  • mật khẩu hệ thống
  • mật khẩu cơ sở dữ liệu
  • khóa API
  • phím ssh
  • OTP
  • Khóa mã hóa, v.v.

Việc quản lý những bí mật này do bộ phận bảo mật thông tin/DevOps trong một tổ chức xử lý. Họ đảm bảo không có truy cập trái phép vào dữ liệu

Cài đặt Vault trên máy cục bộ

Vault là gì?

Vault là một hệ thống quản lý mã hóa và bí mật dựa trên danh tính. Vault cung cấp các dịch vụ mã hóa được kiểm soát bằng các phương thức xác thực và ủy quyền. Sử dụng giao diện người dùng, CLI hoặc API HTTP của Vault, quyền truy cập vào các bí mật và dữ liệu nhạy cảm khác có thể được lưu trữ và quản lý một cách an toàn, được kiểm soát chặt chẽ [bị hạn chế] và có thể kiểm tra được

Để bắt đầu, hãy cài đặt Vault trên hệ thống cục bộ của chúng tôi

hệ điều hành Mac

Trong macOS, Vault có thể được cài đặt bằng brew

Cài đặt HashiCorp nhấn

$brew tap hashicorp/tap

Cài đặt Vault

$brew install hashicorp/tap/vault

Cập nhật kho tiền

$brew upgrade hashicorp/tap/vault

các cửa sổ

Trong windows, bạn có thể sử dụng Chocolatey để cài đặt Vault

$choco install vault

Ubuntu

$curl -fsSL //apt.releases.hashicorp.com/gpg | sudo apt-key add -

Thêm kho lưu trữ HashiCorp Linux chính thức

$ sudo apt-add-repository "deb [arch=amd64] //apt.releases.hashicorp.com $[lsb_release -cs] main"

Cập nhật và cài đặt

$ sudo apt-get update && sudo apt-get install vault
Khởi động máy chủ Vault Dev

Sau khi cài đặt hoàn tất, hãy xác minh cài đặt bằng lệnh bên dưới

$ vault status

đầu ra

________số 8

Khởi động máy chủ

vault server -dev

đầu ra

$brew install hashicorp/tap/vault
0

Máy chủ dành cho nhà phát triển là một máy chủ tích hợp, được định cấu hình sẵn, không an toàn lắm nhưng hữu ích để chơi với Vault cục bộ

Máy chủ hiển thị

$brew install hashicorp/tap/vault
7 và
$brew install hashicorp/tap/vault
8. Mã thông báo gốc thay đổi mỗi khi bạn khởi động máy chủ. Vì vậy, hãy đảm bảo mã thông báo được thêm vào biến môi trường mỗi khi bạn khởi động lại máy chủ

Máy chủ nhà phát triển lưu trữ tất cả dữ liệu trong bộ nhớ [nhưng vẫn được mã hóa], lắng nghe trên

$brew install hashicorp/tap/vault
9 mà không có TLS, đồng thời tự động hủy niêm phong và hiển thị cho bạn khóa chưa niêm phong và khóa truy cập gốc

Thêm chi tiết máy chủ trong PATH của bạn

$brew install hashicorp/tap/vault
1

Khi chạy Vault ở chế độ nhà phát triển, công cụ bảo mật Khóa/Giá trị v2 được bật ở đường dẫn

$brew upgrade hashicorp/tap/vault
0. Công cụ bí mật khóa/giá trị là kho lưu trữ khóa-giá trị chung được sử dụng để lưu trữ các bí mật tùy ý trong bộ lưu trữ vật lý đã định cấu hình cho Vault. Các bí mật được ghi vào Vault được mã hóa và sau đó được ghi vào bộ lưu trữ phụ trợ. Do đó, cơ chế lưu trữ phụ trợ không bao giờ nhìn thấy giá trị không được mã hóa và không có phương tiện cần thiết để giải mã mà không có Vault

Truy cập Vault

Vault cung cấp nhiều cơ chế như UI, Cli và API để lưu trữ/lấy bí mật. Nhiều công cụ bí mật khác nhau có thể được sử dụng để lưu trữ/truy xuất chúng. Tuy nhiên, máy chủ Vault luôn sử dụng công cụ Khóa/Giá trị ở chế độ phát triển

Công cụ bí mật khóa/giá trị là kho lưu trữ khóa-giá trị chung được sử dụng để lưu trữ các bí mật tùy ý trong bộ lưu trữ vật lý đã định cấu hình cho Vault. Các bí mật được ghi vào Vault được mã hóa và sau đó được ghi vào bộ lưu trữ phụ trợ

Để truy cập giao diện người dùng, hãy mở

$brew upgrade hashicorp/tap/vault
1 trong trình duyệt của bạn

Đăng nhập Vault bằng mã thông báo

Danh sách bí mật trong kho tiền

Máy chủ ở chế độ phát triển lưu trữ các bí mật trong

$brew upgrade hashicorp/tap/vault
0

Viết bí mật cho KV bằng Python

Bây giờ chúng ta đã thiết lập và chạy máy chủ nhà phát triển Vault của mình, hãy thử và lưu trữ bí mật bằng Python. Vui lòng lưu ý rằng máy chủ phát triển lưu trữ tất cả bí mật trong bộ nhớ và thời điểm phiên máy chủ kết thúc, tất cả bí mật đều bị xóa

HVAC là ứng dụng khách API vault mà chúng tôi sẽ sử dụng để tương tác với máy chủ Vault

Lắp đặt HVAC

$brew install hashicorp/tap/vault
2

Kết nối qua Máy khách HVAC

$brew install hashicorp/tap/vault
3

đầu ra

$brew install hashicorp/tap/vault
4

Bạn có thể xác minh các bí mật từ UI/CLI. Bí mật mà chúng tôi vừa viết được lưu trữ trong

$brew upgrade hashicorp/tap/vault
3

Đọc bí mật từ KV bằng Python.
$brew install hashicorp/tap/vault
5

đầu ra

$brew install hashicorp/tap/vault
6

Phản hồi để đọc chứa tất cả các bí mật được lưu trữ trong

$brew upgrade hashicorp/tap/vault
4 trong đối tượng
$brew upgrade hashicorp/tap/vault
5 cùng với siêu dữ liệu của bí mật

Tóm lược

Chức năng của Vault không chỉ giới hạn ở các công cụ KV. Họ cũng hỗ trợ các nền tảng đa đám mây như GCP, Azure và AWS với các công cụ và API chuyên dụng. Để tìm hiểu thêm về nó, hãy khám phá các liên kết trong phần tài liệu tham khảo

Làm cách nào để sử dụng vault trong Python?

Chương trình Python .
chỉ cần gọi. kho tiền. nhận [dịch vụ, khóa]
Nếu cặp [khóa, giá trị] cho dịch vụ đã tồn tại, thì nó chỉ trả về giá trị
Nếu không, nó sẽ nhắc người dùng về giá trị và lưu nó
Nếu bạn phải thay đổi giá trị của khóa trong tương lai, chỉ cần gọi. kho tiền. bộ [dịch vụ, khóa, new_value]

Làm cách nào để cài đặt mô-đun HVAC trong Python?

Cài đặt. Bắt đầu. Khởi tạo máy khách. Vault Cluster - Khởi tạo và Niêm phong/Hủy niêm phong. .
Cách sử dụng. Đọc cấu hình. Tạo hoặc cập nhật vai trò. Đọc vai trò. .
Nguồn tham khảo. hvac. api. hvac. api. auth_methods. hvac. api. bí mật_engines. .
Thêm phụ thuộc mới. ví dụ
1. 0. 2. 1. 0. 1. 🐛 Sửa lỗi. 📚 Tài liệu

Vault có API không?

Vault có API HTTP có thể dùng để kiểm soát mọi khía cạnh của Vault. API HTTP của Vault cung cấp cho bạn toàn quyền truy cập vào Vault bằng cách sử dụng REST giống như các động từ HTTP. Mọi khía cạnh của Vault đều có thể được kiểm soát bằng API.

Thư viện HVAC là gì?

Thư viện HVAC là một công cụ linh hoạt và mạnh mẽ để phân tích các cách bố trí hệ thống khác nhau và so sánh mức tiêu thụ năng lượng chính, lượng khí thải carbon dioxide hoặc chi phí năng lượng của chúng đối với bất kỳ khoảng thời gian tham chiếu nào [thường là một năm hoạt động]

Chủ Đề