Hướng dẫn này giới thiệu về cách ký mã với Azure DevOps, sử dụng chứng chỉ được lưu trữ trong Azure Key Vault. Để làm theo các hướng dẫn này, bạn sẽ cần:
- An Tài khoản Azure
- A Dự án DevOps
- A Kho chìa khóa
- A chứng chỉ ký mã được cài đặt trong Key Vault của bạn. Bạn có thể:
- Tạo một CSR và cài đặt chứng chỉ trong Key Vault or
- Nhập chứng chỉ vào Key Vault
Mục lục
Đăng ký ứng dụng Azure
Trước tiên, bạn cần đăng ký một ứng dụng Azure mới để có thể kết nối với Key Vault của mình để ký.
- Đăng nhập vào Cổng thông tin Azure.
- Hướng đến Azure Active Directory. (Nhấp chuột Nhiều dịch vụ hơn nếu biểu tượng Azure Active Directory không hiển thị.)
- Nhấp chuột Đăng ký ứng dụng, ở cột bên trái.
- Nhấp chuột Đăng kí mới.
- Cung cấp cho ứng dụng của bạn một Họ tên Và nhấp vào Đăng ký cái nút. Để các cài đặt khác ở giá trị mặc định của chúng.
- Ứng dụng mới của bạn đã được đăng ký. Sao chép và lưu giá trị được hiển thị cho ID ứng dụng (khách hàng), bởi vì bạn sẽ cần nó sau này.
Tạo bí mật cho khách hàng
Tiếp theo, tạo một bí mật của khách hàng, sẽ đóng vai trò là thông tin đăng nhập khi ký.
- Nhấp chuột Chứng chỉ & bí mật trong menu bên tay trái.
- Nhấp chuột Bí mật khách hàng mới.
- Cung cấp cho khách hàng của bạn bí mật Mô tả, đặt thời hạn như mong muốn và nhấp vào Thêm .
- Sao chép Giá trị về bí mật khách hàng mới của bạn ngay và lưu nó ở một nơi an toàn. Lần tiếp theo trang được làm mới, giá trị này sẽ bị che và không thể khôi phục được.
Bật quyền truy cập trong Key Vault
Bây giờ, bạn sẽ cần bật quyền truy cập cho ứng dụng của mình trong Azure Key Vault.
- Điều hướng đến Key Vault chứa chứng chỉ bạn muốn sử dụng để ký và nhấp vào Chính sách truy cập liên kết.
- Nhấp chuột Thêm chính sách truy cập.
- Theo Quyền chính, cho phép Verify, Sign, Getvà List.
- Theo Quyền bí mật, cho phép Get và List.
- Theo Quyền chứng chỉ, cho phép Get và List.
- Nhấn vào Không có lựa chọn nào liên kết, dưới Chọn chính, sau đó sử dụng trường tìm kiếm để định vị và chọn ứng dụng bạn đã tạo trong phần trước.
- Nhấn vào Chọn .
- Nhấn vào Thêm .
- Nhấp chuột Lưu.
- Chính sách truy cập của bạn đã được thiết lập.
Định cấu hình bản dựng DevOps
Bây giờ bạn có thể cấu hình bản dựng của mình. Mở dự án của bạn trong Azure DevOps.
Lưu trữ thông tin đăng nhập của ứng dụng dưới dạng các biến
Bạn có thể đưa trực tiếp ID ứng dụng và bí mật ứng dụng khách vào tệp đường dẫn YAML, nhưng sẽ an toàn hơn nếu bạn lưu trữ chúng dưới dạng các biến trong DevOps.
- Nhấp chuột Đường ống.
- Nhấp chuột Thư viện.
- Nhấp chuột + Nhóm biến.
- Đặt tên cho nhóm biến của bạn.
- Nhấp chuột Thêm.
- Nhập tên biến cho ID ứng dụng của bạn, sau đó dán giá trị vào. Nhấp vào khóa để mã hóa biến khi bạn hoàn tất.
- Lặp lại quy trình để thêm một biến cho bí mật khách hàng của bạn.
- Nhấp chuột Lưu.
- Liên kết nhóm biến trong đường dẫn của bạn. (thay VARIABLE-GROUP bằng tên của nhóm biến thực tế của bạn.)biến: – nhóm: ‘VARIABLE-GROUP’
Thêm bước đường ống để cài đặt công cụ đăng nhập Azure
Công cụ dấu hiệu Azure là một tiện ích nguồn mở cung cấp SignTool chức năng cho các chứng chỉ và khóa được lưu trữ trong Azure Key Vault. Thêm bước sau vào đường dẫn của bạn để cài đặt Azure Sign Tool:
– task: DotNetCoreCLI @ 2 input: command: ‘custom’ custom: các đối số ‘tool’: ‘install -global azuresigntool’ displayName: Install AzureSignTool
Thêm lệnh công cụ dấu hiệu Azure vào đường ống
- Bây giờ bạn có thể thêm một nhiệm vụ để ký mã của bạn vào đường dẫn. Bạn sẽ cần những thông tin sau:
- trên màn hình URI Key Vault (có sẵn trong Azure Portal):
- Tên thân thiện của chứng chỉ của bạn trong Key Vault:
- trên màn hình ID ứng dụng và Bí mật khách hàng tên biến:
- Thêm lệnh gọi Công cụ Dấu hiệu Azure vào đường dẫn của bạn. Thay thế các giá trị hiển thị trong CHỮ HOA bằng tất cả các giá trị thực của bạn:- task: CmdLine @ 2 input: script: AzureSignTool sign -kvu “KEY-VAULT-URI” -kvi “$ (APPLICATION-ID-VAR)” -kvs “$ (CLIENT-SECRET-VAR)” -kvc CERTIFICATE-NAME -tr “http://ts.ssl.com” -td sha256 “FILE-TO-SIGN” displayName: Sign Code
- Bạn sẽ thấy đầu ra như thế này nếu việc ký thành công:thông tin: sentayho.com.vnram [0] => Tệp: D: a 1 s x64 Debug sentayho.com.vn Tệp ký D: a 1 s x64 Debug sentayho.com.vn Thông tin: AzureSignTool. Chương trình [0] => Tệp: D: a 1 s x64 Debug sentayho.com.vn Đã hoàn tất quá trình ký thành công cho tệp D: a 1 s x64 Debug sentayho.com.vn.