Thông tin cơ bản: Tổ chức của chúng tôi đã sử dụng NIS hơn 20 năm để xác thực UNIX/Linux, vẫn tiếp tục cho đến thời điểm hiện tại. Windows và Active Directory đã xuất hiện trong tổ chức của chúng tôi vào khoảng 16 năm trước, nhưng AD chưa bao giờ được sử dụng cho xác thực Linux (hiện chỉ sử dụng RHEL/CentOS và Ubuntu Linux, tất cả các *nix khác đã bị loại bỏ). tất cả nhiều tài nguyên Linux của chúng tôi, chúng tôi vẫn đang sử dụng phạm vi UID/GID truyền thống cho các tệp của người dùng.
Bây giờ, ban quản lý cuối cùng đã ra lệnh rằng chúng tôi cần chuyển sang AD cho xác thực Linux và ngừng sử dụng NIS (không có tranh luận thực sự nào ở đó;) và vì vậy chúng tôi đang nghiên cứu sử dụng SSSD để thực hiện việc này (dường như là [chỉ?] phổ biến nhất cách tích hợp xác thực Linux với AD.) Vấn đề chúng tôi đang gặp phải là cách liên kết các giá trị UID và GID dựa trên NIS cũ cho người dùng với danh tính dựa trên AD mới của họ. Chẳng hạn, người dùng AD-auth'd của tôi trên một hệ thống thử nghiệm có cái này từ getent passwd -s sss wdennis
:
root@vm01:~# getent passwd -s sss wdennis
wdennis:*:140001116:140000513:Will Dennis:/home/wdennis:/bin/bash
Vì vậy, rõ ràng UID/GID được tạo tự động và không tương ứng với các giá trị NIS hiện tại của chúng tôi. Khi thực hiện một số nghiên cứu về AD và lược đồ của nó, tôi thấy rằng các thuộc tính người dùng bao gồm:
uidNumber
gidNumber
unixHomeDirectory
đăng nhậpShell
Câu hỏi của tôi, SSSD (hoặc bất cứ thứ gì chúng tôi sử dụng để xác thực) bằng cách nào đó có thể tiêu thụ các giá trị của uidNumber
và gidNumber
để ánh xạ UID/GID hiện có của các tệp cho người dùng AD-auth'd mới? Hoặc, làm cách nào khác để chúng tôi có thể liên kết thông tin quyền sở hữu tệp hiện có với người dùng được xác thực bởi AD? (Do số lượng tệp và máy có chúng, thực sự không thể chown
các tệp vào các giá trị UID/GID mới...)