Từ 1 tới 5 trên tổng số 5 kết quả

Đề tài: Lấy thông tin đăng nhập ứng dụng trong mạng lan ở phía client về server của ứng dụng để xác thực?

  1. #1
    Ngày gia nhập
    02 2011
    Bài viết
    29

    Angry Lấy thông tin đăng nhập ứng dụng trong mạng lan ở phía client về server của ứng dụng để xác thực?

    C# : Lấy thông tin đăng nhập ứng dụng trong mạng lan ở phía client về server để xác thực?
    Mình đang muốn viết một phần mềm ứng dụng theo kiểu client/ server để cài đặt trong mạng lan. Trong đó vấn đề đáng quan ngại là việc xác thực người dùng ứng dụng. Không biết việc xác thực đó phải sử dụng đến những kiến thức chuyên môn nào? Và làm nó ra sao?
    Mô tả tiến trình người máy như sau : Người dùng đăng nhập miền trong mạng Lan, sau đó phải đăng nhập đặc quyền của ứng dụng theo sự phân quyền sẵn có trong ứng dụng - tùy theo chức năng và quyền hạn mà có người dùng có quyền làm gì trên ứng dụng đó. Thông tin đăng nhập phải được gủi về server của ứng dụng (không nhất thiết phải là máy điều khiển miền) để xác thực bằng cơ sở dữ liệu, chứ không được kết nối trực tiếp đến cơ sở dữ liệu để xác thực tại client (do yêu cầu bảo mật). Ai có thể cho mình gợi ý để thực hiện việc này, nhất là việc gửi thông tin đăng nhập và gửi trả kết quả xác thực về người dùng ra sao. Trong c# có những phương thức nào hỗ trợ việc này?
    Theo mình được biết thì hacker hoàn toàn có thể thực hiện việc đánh cắp thông tin đăng nhập khi xác thực tại client bằng cách dò theo các dòng lệnh assembly để tìm username và password ở đâu đó trong registers. Vì vậy mình muốn viết ứng dụng thực hiện việc xác thực tại server theo mô hình thông thường (server lấy thông tin đăng nhập rồi kết nối cơ sở dữ liệu và trả về kết quả xác thực) chứ không làm theo kiểu này :
    http://vn.answers.yahoo.com/question...9201952AAIXUw5

  2. #2
    Ngày gia nhập
    08 2009
    Nơi ở
    TP Cần Thơ - Lộ 91B
    Bài viết
    214

    - Từ Client gọi Form đăng nhập
    - Thông tin đăng nhập truyền về Server có dạng : LOGIN|[username]|[pass]
    - Server nhân thông tin rồi sẽ tự cắt chuỗi để kiểm tra lệnh

    - Client
    Code:
    //-- Giả sử Client đã kết nối đến Server rồi bây giờ ta tiến hành đăng nhập
    
    private void ButtonSendInfoLogin(object sender, EvenAgrs e){
             StreamWriter SW = new StreamWriter( this.client.GetStream() );
             SW.WriteLine("LOGIN|" + textBoxUserName.Text + "|" + textBoxPass.Text);
             SW.Flush();
    }
    - Server
    Code:
    private void RecieveMessageFromClient(){
             StreamReader SR = new StreamReader ( myClient.GetStream() );
             string response = "";
             while(true){
                    response = SR.ReadLine();
                    string[] listInfos = response.Split('|');
                    if ( listInfos[0] == "LOGIN" ){
                       //-- Tiến hành kiểm tra trong CSDL với thông tin
                       //-- UserName = listInfos[1] and Pass = listInfos[2]
                       //-- Trả về thông tin kiểm tra cho Client
                    }
                    //-- Những lệnh khác
             }
    }
    - Bạn có thể định nghĩa 1 đối tượng COMMAND với các lệnh như : LOGIN ; LOGOUT ; ERRORLOGIN ; SENDMESSAGE ; QUERY . . .

    - Nếu để Client đăng nhập thì nên dùng Interface để Server đỡ làm việc

    PHÁT TRIỂN PHẦN MỀM HỖ TRỢ CÔNG VIỆC
    ỨNG DỤNG QUẢN LÝ CHO DOANH NGHIỆP VỪA VÀ NHỎ

    (0969.867.490 - ltnghia.wins@gmail.com)

  3. #3
    Ngày gia nhập
    02 2011
    Bài viết
    29

    Angry Lập trình Socket?

    Mình hiện chưa có điều kiện để tìm hiểu nhiều về lập trình socket và lập trình truyền thông. Khi đặt ra vấn đề này mình hoàn toàn chưa có chút hiểu biết nào về các môn học ấy. AE có thể cho mình xin tài liệu về các môn ấy để mình tự học không? Nhất là tài liệu viết trên các ngôn ngữ .net ấy. Mình tìm tài liệu về lập trình truyền thông toàn thấy người ta viết bằng java đọc cũng chỉ hiểu sơ sơ về đường lối giải thuật thôi. Hơn nữa đây là ứng dụng windows. Mà AE cho mình hỏi luôn mình nên dùng cái gì để gỡ rối và chạy thử nghiệm những chương trình như thế này vậy? Dùng VMWare hay cái gì khác vậy? Thế cái hồi mà chưa có VMWare thì người ta dùng cái gì để chạy thử nghiệm vậy?

  4. #4
    Ngày gia nhập
    06 2011
    Bài viết
    30

    nếu bạn sợ k bảo mật thông tin thì bạn có thể viết ứng dụng truy vấn dữ liệu bạn dùng Procedue.tất cả code truy vấn bằng SQL dc lưu ở máy mà bạn chọn làm sever,còn máy client chỉ chứa giao diện người dùng,như vậy sẽ bảo mật hơn.

  5. #5
    Ngày gia nhập
    02 2011
    Bài viết
    29

    Angry Lập trình socket

    ờ hé :_) Nhưng vấn đề lúc này với mình có lẽ là việc làm sao để trao đổi dữ liệu theo giao thức TCP/Ip giữa client và server. Mà môn lập trình truyền thông chưa học thì chẳng biết làm. Hí hí.. Còn làm ứng dụng cục bộ thì không nói làm gì Ai giúp mình kiếm tài liệu lập trình truyền thông với dotnet được không?

Các đề tài tương tự

  1. Trả lời: 6
    Bài viết cuối: 28-06-2014, 12:02 PM
  2. Lập trình C Cách tạo vòng lặp nhận gửi tin trong client/server!
    Gửi bởi LiJK trong diễn đàn Thắc mắc lập trình C/C++ trên Linux
    Trả lời: 4
    Bài viết cuối: 02-02-2014, 09:11 PM
  3. Socket Không thể xóa Client ngắt kết nối với Server trong danh sách Client đang kết nối
    Gửi bởi thanhtanh trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 1
    Bài viết cuối: 20-10-2012, 04:37 PM
  4. Chạy ứng dụng client/server vc++ trên 2 máy, làm thế nào để client kết nối server?
    Gửi bởi hotritam365 trong diễn đàn Thắc mắc lập trình Visual C++
    Trả lời: 5
    Bài viết cuối: 12-07-2012, 10:20 PM
  5. Có cần cài SQlServer trên máy Client, trong ứng dụng Server Client
    Gửi bởi billsang trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 4
    Bài viết cuối: 28-10-2011, 01:09 PM

Tags của đề tài này

Quyền hạn của bạn

  • Bạn không thể gửi đề tài mới
  • Bạn không thể gửi bài trả lời
  • Bạn không thể gửi các đính kèm
  • Bạn không thể chỉnh sửa bài viết của bạn