Tôi được yêu cầu cung cấp giải pháp cho khách hàng nội bộ của mình. Tất cả giao tiếp mạng là nội bộ và không có ứng dụng cũng như máy chủ nào có thể truy cập được qua internet.
- Ứng dụng YÊU CẦU sẽ có danh sách SSN cho hơn 1000 người mà họ cần thông tin (danh sách hơn 1000 khác nhau mỗi ngày).
- Ứng dụng REPORTER có thể chạy các truy vấn SQL và cung cấp đầu ra được định dạng.
- Ứng dụng DATAOWNER có thông tin cần thiết, được lưu trữ trong RDBS, bao gồm cột SSN văn bản gốc.
NGƯỜI YÊU CẦU không thể trực tiếp yêu cầu thông tin từ DATAOWNER. Cách duy nhất NGƯỜI YÊU CẦU phải yêu cầu thông tin là thông qua một URL tới NGƯỜI BÁO CÁO. Đó là nơi tôi đến.
Tôi không có khả năng thay đổi khả năng/cấu hình của ứng dụng NGƯỜI YÊU CẦU cũng như ứng dụng DATAOWNER, ngoài việc cung cấp thông tin cho NGƯỜI YÊU CẦU, về cách chuẩn bị và định dạng URL.
Tôi có thể tạo báo cáo và định cấu hình REPORTER để chấp nhận URL như
https://REPORTER/TheReport?argument1=123456789
Tuy nhiên, tôi không muốn SSN trên URL ở dạng văn bản thuần túy, vì nó sẽ được ghi vào nhật ký web của NGƯỜI BÁO CÁO và ai biết được ở đâu nữa.
Ý tưởng của tôi cho một giải pháp là yêu cầu NGƯỜI YÊU CẦU thực hiện hàm băm SHA256 của phép nối SSN và một giá trị bí mật thay đổi định kỳ và sử dụng thông báo đó trên URL. Khi REPORTER nhận được yêu cầu, nó sẽ thực hiện truy vấn SQL đối với DATAOWNER như (mã giả):
chọn [DesiredFields] từ bảng
trong đó SHA256FUNCTION(CONCATENATE([SSNcolumn],<TheSecretValue>)) = $argument1
.
Tôi tin rằng điều này không làm tăng thêm bất kỳ rủi ro nào về việc lộ SSN, vì tất cả quá trình xử lý sử dụng các giá trị văn bản gốc diễn ra trên các máy chủ đã có quyền truy cập vào chúng ở dạng văn bản gốc. Ứng dụng REPORTER không bao giờ nhìn thấy SSN văn bản gốc một cách trực tiếp, mặc dù nó phải chuyển đầu ra của truy vấn SQL, có thể bao gồm hoặc không bao gồm SSN. Tuy nhiên, do thiết kế phần mềm của NGƯỜI BÁO CÁO, không có kết quả truy vấn cũng như đầu ra định dạng nào được lưu trữ.
Mặc dù tôi quen thuộc với một số khía cạnh của tiền điện tử, nhưng tôi chắc chắn không phải là chuyên gia. Tôi đánh giá cao bất kỳ nhận xét nào về phương pháp này, dù tốt hay xấu.
Cảm ơn bạn