Phần 1: USB token và các thẻ thông minh
Martin Kiaer
Tại sao bạn cần một CSP client
Trong bài báo trước, chúng tôi đã bảo đảm rằng chip OS trên thẻ thông minh là hoàn toàn tương thích với CSP mà bạn muốn sử dụng. Trước khi bắt đầu với một ví dụ về triển khai, chúng tôi sẽ giới thiệu cho các bạn CSP là gì và tại sao nó lại là một thành phần quan trọng đến vậy khi làm việc với việc chứng thực đa hệ số trong Windows.
Cơ bản mà nói, Cryptographic Service Provider (CSP) là một bộ phận phần mềm nằm ở giữa thiết bị bảo mật và hệ điều hành Windows. Hình 1 bên dưới thể hiện nó trong Windows XP và Windows Server 2003:
Hình 1: Role của CSP trong Windows XP và Windows Server 2003
Như những gì bạn thấy trong hình trên, việc truyền thông giữa một ứng dụng sử dụng chứng thực đa hệ số và thiết bị mật được thực hiện thông qua các chức năng CryptoAPI. Một số hãng có chức năng và các tính năng nâng cao khác trong chính CSP của hãng, một số khác lại lợi dụng chức năng và tính năng đã có sẵn trong Windows. Đây là một khái niệm quan trọng mà bạn cần phải hiểu, vì nó chính là những điểm khác nhau giữa Windows XP / Server 2003 và Windows Vista / Server 2008, và chúng tôi sẽ giải thích rõ hơn trong bài tiếp theo của loạt bài này.
Ví dụ, các phiên bản Windows hiện được hỗ trợ bởi Microsoft có các hỗ trợ kèm theo cho nhiều loại thẻ thông minh khác nhau. Điều này có nghĩa rằng bạn không cần phải cài đặt một CSP riêng. Tất cả truyền thông đến và đi từ thẻ thông minh đều được thực hiện thông qua CryptoAPI như đã được đề cập từ trước. Mặc dù vậy, nếu giải pháp thẻ thông minh mà bạn thích lại không có trong danh sách thì bạn cần phải bảo đảm bổ sung một CSP có hỗ trợ bởi hãng sản xuất thẻ, từ đó mới có thể sử dụng giải pháp thẻ thông minh với Windows. Vậy điều gì là quan trọng cần lưu ý ở đây? Đó chính là chức năng CSP luôn được cần đến, dù bạn sử dụng các tính năng được hỗ trợ kèm theo hay sử dụng các tính năng nào đó của hãng có trong thiết bị bảo mật.
Bây giờ chúng ta sẽ tìm hiểu cơ bản về CSP, trước tiên hãy xem qua cách CSP có thể được thực hiện như thế nào trong thế giới thực.
Cách chuẩn bị một CSP client của nhóm thứ ba cho Windows XP và Windows Server 2003
Chúng ta sẽ không đi vào hướng dẫn từng bước cơ bản về cách thực hiện như thế nào. Tuy nhiên chúng tôi sẽ giới thiệu cho các bạn một số cách khác nhau mà có cả CSP và cách bạn cài đặt một CSP client của nhóm thứ ba, khi đã gắn một chính sách vào CSP client.
Với ví dụ này, chúng tôi muốn thực hiện theo các bước dưới đây:
- Thi hành một giải pháp thẻ thông minh để chuẩn bị thẻ chúng tôi có thể sử dụng Windows XP và Windows Server 2003 bằng cách tích hợp nó với một PKI của Microsoft.
- Gộp một chính sách bảo mật đã được kích hoạt khi người dùng nhập vào mã pin của họ để truy cập vào các nội dung trên thẻ thông minh.
- Tạo một CSP client có thể dễ dàng được cài đặt trên các máy tính hoặc máy chủ trong môi trường doanh nghiệp.
Để giúp thực hiện các yêu cầu được liệt kê ở trên, chúng tôi sẽ sử dụng một sản phẩm của SafeNet có tên gọi là “Borderless Security”. Chúng tôi không muốn tập trung vào bản thân ứng dụng mà chỉ sử dụng nó để trình bày nguyên lý đằng sau thực thi thẻ thông minh, chính vì vậy bạn có thể có được ý tưởng về cách cấu hình một CSP của nhóm thứ ba cho giải pháp chứng thực đa hệ số của mình. Với tất cả các thông tin trên, chúng ta hãy bắt đầu đi vào ví dụ của mình.
1. Chúng ta đã cài đặt ứng dụng SafeNet Borderless trên một máy chủ và chuẩn bị tạo và cấu hình một CSP client cho các máy tính sử dụng Windows XP và Windows Server 2003.
2. Chúng ta bắt đầu giao diện quản lý với SafeNet Borderless Security. Thứ đầu tiên cần thực hiện đó là liên kết PKI tồn tại với giải pháp thẻ thông minh của mình. Đây là bước rất quan trọng trong ví dụ của chúng ta, vì sẽ sử dụng các chứng chỉ để chứng thực khi đưa ra và cấu hình các thẻ thông minh cho người dùng trong hạ tầng cơ sở. Một giải pháp thẻ thông minh điển hình trong cơ sở hạ tầng của Microsoft cần có một PKI đề cung cấp các chứng chỉ với cặp khóa riêng và công để có thể ánh xạ hóa tài khoản trong Active Directory. Tuy vậy bạn cần phải chú ý rằng mỗi một PKI lại không được yêu cầu nhất thiết khi thực thi giải pháp này, và điều này phụ thuộc vào giải pháp CSP của nhóm thứ ba. Một số hãng có hỗ trợ vấn đề bảo mật bằng mật khẩu đối với nội dung được lưu bên trong chip bảo mật. Các chứng chỉ rất hữu ích bao gồm việc nó cho phép chúng ta vô hiệu hóa một thẻ thông minh bằng cách thu hồi lại chứng chỉ người dùng có liên quan từ Active Directory. Lưu ý các mũi tên dưới đây trong hình 2.
Hình 2: Đây là liên kết giải pháp thẻ thông minh với PKI đang tồn tại
- Certificate Authority Name được cấu hình để trỏ đến một CA đã được phát hành trong PKI Microsoft của chúng ta.
- Khi liên kết được với CA, chúng ta hoàn toàn có thể chọn một trong những mẫu chứng chỉ có sẵn trong PKI của mình. Ví dụ, chọn một trong các mẫu chứng chỉ mặc định có tên gọi là “Smart Card User”, nhưng nó cũng có thể có trong mẫu chứng chỉ đa mục đích trên version 2 (Windows Server 2003) hay version 3 (Windows Server 2008).
- Tốt hơn hết ở đây bạn nên chọn một cặp khóa có kích thước 1024kb hoặc hơn để bảo vệ chứng chỉ sẽ được sử dụng trong suốt quá trình chuẩn bị thẻ thông minh. Khóa với kích thước 512KB cho một chứng chỉ không nên dùng ở đây.
3. Bất cứ khi nào người dùng cần có một thẻ thông minh đã được phát hành thì thẻ thông minh sẽ được khởi tạo (nghĩa là được chuẩn bị) cùng với nó là chính sách bảo mật để kiểm soát chiều dài mã pin, số lần thử,… Trong hình 3 và 4 bạn có thể thấy được một số tùy chọn bảo mật (chính sách) mà chúng ta có thể gắn với CSP của mình.
Hình 3 và 4: Bạn có thể cấu hình các thiết lập chính sách khác nhau cho việc bảo vệ mã Pin.
4. Với ví dụ này, thứ mà chúng ta cần thực hiện cuối cùng là chuẩn bị một gói CSP client có các thiết lập từ các bước trước. Với SafeNet Bordless Security, chúng ta có nhiều tùy chọn để có thể được cấu hình. Hãy xem hình 5,6 và 7 để biết một số tùy chọn có thể có trong CSP client của bạn.
Hình 5
Hình 6
Hình 7
5. Khi bạn đã chọn tính năng gì muốn gộp vào với CSP client thì tiện ích sẽ tạo một gói MSI, gói này có thể được cung cấp đến các máy tính khách và các máy chủ của bạn, bằng cách sử dụng phương pháp triển khai phần mềm mà bạn ưa thích (xem hình 8 và 9).
Hình 8
Hình 9
6. Thứ cuối cùng mà bạn cần thực hiện đó là vào máy chủ hoặc máy khách, nơi muốn sự hỗ trợ của thẻ thông minh được kích hoạt.
a, Bảo đảm rằng driver mới nhất cho thiết bị chứng thực đa hệ số của bạn đã được cài đặt và đang làm việc.
b, Cài đặt gói phần mềm CSP client và bảo đảm rằng Windows có thể biết được thiết bị chứng thực. Hình 10 thể hiện cho bạn biết nó hiển thị như thế nào khi CSP client của chúng ta đã tạo trong ví dụ này được cài đặt trên một máy tính.
Hình 10: CSP client của chúng ta đã được cài đặt và chuẩn bị phục vụ với tư cách là
một phần mềm thực hiện các nhiệm vụ chứng thực đa hệ số trong Windows.
Thẻ xanh trên biểu tượng taskbar chỉ thị rằng thẻ thông minh đã được cắm.
7. CSP client được cài đặt và sẵn sàng sử dụng bằng các ứng dụng có hỗ trợ hoặc yêu cầu chứng thực đa hệ số. Một trong số các ứng dụng này có thể là ứng dụng mà chúng tôi liệt kê dưới đây:
a. MSGINA (nghĩa là) màn hình đăng nhập của Windows. Đưa thẻ thông minh và nhập mã pin của bạn vào để chứng thực. Bạn có thể kiểm soát cách thao tác của Windows khi sử dụng thẻ thông minh bằng cách điều chỉnh một số thiết lập trong Group Policy.
b,EAP-TLS hoặc PEAP-TLS cho việc chứng thực trong suốt các kết nối VPN và truy cập không dây,…
c, Giải pháp CMS (Card Management System) được sử dụng để cung cấp các thẻ thông minh. Trong ví dụ này chúng ta đã sử dụng sản phẩm “light” của SafeNet, tuy nhiên nếu bạn cần cung cấp đến 50 hoặc nhiều hơn số lượng này các thẻ thông minh thì bạn nên xem xét đến một giải pháp CMS thực sự của Intercede (SafeNet), Microsoft, Entrust, Aladdin, …
d, Còn nhiều giải pháp khác sử dụng mọi thứ từ dấu vân tay của người đọc đến nhận dạng mặt.
Một CSP cũng có thể quan trọng trong các kịch bản khác mà chúng tôi không giới thiệu đến trong bài này. Với ví dụ trong suốt quá trình thực thi PKI, bạn sẽ có được sự lựa chọn trong việc sử dụng CSP của chính Microsoft hoặc của nhóm thứ ba. Thường thì bạn nên sử dụng CSP của nhóm thứ ba khi chọn giải pháp HSM để bảo vệ các khóa riêng của CA.
Kết luận
Trong bài này, chúng tôi muốn giới thiệu cho các bạn tầm quan trọng của phần mềm chịu trách nhiệm cho việc liên kết một giải pháp chứng thực đa hệ số với Windows. Trong bài tiếp theo chúng tôi sẽ giới thiệu về một số thay đổi đôi chút với Windows Vista và Windows Server 2008 cùng với những gì bạn nên quan tâm và biết đến chúng khi thực thi một giải pháp chứng thực đa hệ số cho nền tảng này.