Không chắc chắn 100% ý bạn:
Trusted_Connection=True;
LÀ sử dụng thông tin đăng nhập Windows và 100% tương đương với:
Integrated Security=SSPI;
hoặc
Integrated Security=true;
Nếu bạn không muốn sử dụng kết nối bảo mật / tin cậy tích hợp, bạn cần chỉ định rõ ràng id người dùng và mật khẩu trong chuỗi kết nối (và bỏ qua mọi tham chiếu đến Trusted_Connection
hoặc Integrated Security
)
server=yourservername;database=yourdatabase;user id=YourUser;pwd=TopSecret
Chỉ trong trường hợp này, chế độ xác thực SQL Server mới được sử dụng.
Nếu có bất kỳ cài đặt nào trong hai cài đặt này (Trusted_Connection=true
hoặc Integrated Security=true/SSPI
), sau đó là thông tin đăng nhập Windows của người dùng hiện tại được sử dụng để xác thực với SQL Server và bất kỳ user iD=
nào cài đặt sẽ bị bỏ qua và không đã qua sử dụng.
Để tham khảo, hãy xem trang web Chuỗi kết nối cho SQL Server 2005 với rất nhiều mẫu và giải thích.
Sử dụng Windows Authentication là cách làm được ưa thích và được khuyến nghị, nhưng nó có thể bị chậm một chút vì SQL Server sẽ phải xác thực thông tin đăng nhập của bạn dựa trên Active Directory (thường là). Tôi không biết sự chậm trễ nhỏ đó có thể là bao nhiêu và tôi không tìm thấy bất kỳ tài liệu tham khảo nào cho điều đó.
Tổng kết:
Nếu bạn chỉ định Trusted_Connection=True;
hoặc Integrated Security=SSPI;
hoặc Integrated Security=true;
trong chuỗi kết nối của bạn
==> THÌ (và chỉ sau đó) bạn có Xác thực Windows đang xảy ra. Mọi user id=
cài đặt trong chuỗi kết nối sẽ bị bỏ qua .
Nếu bạn KHÔNG NÊN chỉ định một trong các cài đặt đó,
==> thì bạn KHÔNG ĐƯỢC có Xác thực Windows đang diễn ra (Chế độ Xác thực SQL sẽ được sử dụng)