Lời nói đầu
Để thực hiện thao tác với những Service của AWS gián tiếp thông qua AWS CLI, CDK hay Framework, người dùng cần phải cài đặt Chứng thực hay Credential (Access-Key và Secret-Key) trên môi trường làm việc. Việc cài đặt này nhằm đảm bảo security cho hệ thống Cloud không bị truy cập bất chính và thực hiện những mệnh lệnh bất chính gây nguy hại đến hệ thống.
Việc cài đặt Chứng thực hay Credential được AWS hỗ trợ cài đặt chi tiết dựa trên mức độ cài đặt bảo mật liên quan tới User. Tại thời điểm của bài viết, AWS hiện có hỗ trợ 3 cách chính như sau:
- Cài đặt Credentials cơ bản với cài đặt Access-Key và Secret-Key.
- Cài đặt Credentials với tài khoản có sử dụng MFA.
- Cài đặt Credentials với tài khoản có sử dụng Switch-Role.
Bài dưới đây, hướng dẫn về cách cài đầu tiên – Cài đặt Credentials cơ bản. Đối với cách khác sẽ được đề cập tới tại các bài sau.
Cài đặt môi trường
1. Tạo Access Key và Secret Key
Khi tạo IAM User thông qua màn hình AWS Console, người dùng có thể chọn tạo luôn Access Key và Secret Key. Sau khi thực hiện thành công, file CSV chứa thông tin chứng thực bao gồm Access Key và Secret Key sẽ cung cấp để download xuống và lưu giữ.
Nếu là User đã có sẵn thể tạo Access Key và Secret Key thông qua IAM Console
2. Cài đặt AWS CLI
Để thực hiện AWS CLI Command cần cài đặt bộ phần mềm CLI (Command Line Interface) của AWS. Để download ứng với hệ điều hành, môi trường đang sử dụng xin tham khảo link dưới đây:
Cài đặt AWS Credential
Để thực hiện chạy AWS CLI Command, cần khởi động chương trình cho phép nhập lệnh tương ứng với hệ điều hành, môi trường đang sử dụng. Đối với Windows là Command Prompt hoặc Powershell, với Linux và MacOS là chương trình Terminal. Sau đó thực hiện lệnh dưới đây để thực hiện cài đặt.
1. Kiểm tra môi trường cài đặt AWS CLI
Thực hiện lệnh dưới đây để kiểm tra cài đặt môi trường:
aws --version
Nếu cài đặt thành công sẽ hiển thị kết quả như phía dưới:
2. Cài đặt Credential
Thực hiện lệnh dưới đây để cài đặt
aws configure
Sau khi thực thi lệnh tại màn hình Terminal sẽ xuất hiện lần lượt các bước nhập Access Key , Secret Key và Region mặc định cùng với định dạng xuất kết quả của câu lệnh. Điền thông tin tương ứng với từng mục.
Sau khi thực hiện trong thư mục gốc của tài khoản đang sử dụng sẽ xuất hiện folder /.aws có chưa file credentials và file config – file chứa thông tin chứng thực. File này sẽ được chương trình AWS CLI tham chiếu mỗi khi thực hiện câu lệnh.
Trong môi trường Windows, những file này nằm tại:
C:\Users\<Tài khoản đang sử dụng>\.aws
Trong môi trường Unix – Linux – MacOS, những file này nằm tại:
~/.aws/
Nội dung của hai file này có dạng như sau:
File : credentials
[default]
aws_access_key_id=AKIAIOSFODNN7EXAMPLE
aws_secret_access_key=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
File : config
[default]
region=us-west-2
output=json
3. Kiểm tra cài đặt
Để kiểm tra đã cài đặt thông tin chứng thực (credential) đã đúng, hãy chạy thử lệnh dưới đây:
aws s3 ls
Sau khi thực hiện câu lệnh, nếu thành công sẽ hiển thị danh sách S3 Bucket hiện có trong tài khoản AWS.
Cài đặt nhiều Credentials ứng với nhiều môi trường AWS
Khi thực hiện quản lý nhiều môi trường AWS, người sử dụng sẽ nhận được nhiều thông tin tài khoản. Nếu chỉ làm theo cách cơ bản sẽ rất phiền phức khi phải thao tác với nhiều môi trường cùng lúc.
Để khắc phục điều này, khi muốn tạo nhiều Credentials trên cùng một môi trường, cần thực hiện thêm option –profile vào câu lệnh tạo Credential.
aws configure --profile <profile_name>
Sau khi thực thi lệnh tại màn hình Terminal sẽ xuất hiện lần lượt các bước nhập Access Key , Secret Key và Region mặc định cùng với định dạng xuất kết quả của câu lệnh giống như đã đề cập ở phía trên. Nhưng trong file credentials và file config có nội dung như sau:
File : credentials
[default]
aws_access_key_id=AKIAIOSFODNN7EXAMPLE
aws_secret_access_key=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
[user1]
aws_access_key_id=AKIAI44QH8DHBEXAMPLE
aws_secret_access_key=je7MtGbClwBF/2Zp9Utk/h3yCo8nvbEXAMPLEKEY
File : config
[default]
region=us-west-2
output=json
[profile user1]
region=us-east-1
output=text
Để thực hiện câu lệnh đối với môi trường AWS có sử dụng thông tin chứng thực (Credential) của user1 cần thêm option –profile vào cuối câu lệnh.
aws s3 ls --profile user1
Lúc này chương trình AWS CLI sẽ tự động tham chiếu nội dung chứng thực của user1 khi thực thi câu lệnh.
Tham khảo khác
Tạo file Credentails bằng tay
Khi đã hiểu được cách hoạt động của AWS CLI khi tạo chứng thực (Credential), người dùng có thể tạo file credentails và file config tại những nơi tương ứng mà không cần phải dùng câu lệnh AWS CLI.
Người dùng có thể tùy biến những file này tùy ý sao cho phù hợp với mục đích sử dụng. Có thể tham khảo tài liệu tại đây để biết thêm chi tiết.
Tùy biến về cách dùng Profile
Việc gõ thêm option profile vào mỗi câu lệnh command có thể gây phiền toái với một số người, thì việc cài đặt thêm biến môi trường liên quan tới profile sẽ giảm gánh nặng này đi rất nhiều. Để biết rõ thêm về cách dùng này xin tham khảo tại đây.
Về VTI Cloud
VTI Cloud là Đối tác cấp cao (Advanced Consulting Partner) của Amazon Web Services (AWS) và Đối tác vàng (Gold Partner) của Microsoft. Với đội ngũ hơn 100+ kỹ sư về giải pháp được chứng nhận bởi AWS và mong muốn hỗ trợ khách hàng trong hành trình chuyển đổi số và dịch chuyển lên đám mây AWS, VTI Cloud tự hào là đơn vị tiên phong trong việc tư vấn giải pháp, phát triển phần mềm và triển khai hạ tầng AWS cho khách hàng tại Việt Nam và Nhật Bản.
Xây dựng các kiến trúc an toàn, hiệu suất cao, linh hoạt, và tối ưu chi phí cho khách hàng là nhiệm vụ hàng đầu của VTI Cloud trong sứ mệnh công nghệ hóa doanh nghiệp.
Liên hệ với chúng tôi: Tại đây
Nguồn: VTI Tech Blog