我的數據庫中有一列存儲信用卡號碼。將它保存在數據庫中大約兩週後,我希望能夠運行查詢來更新所有信用卡條目並將其屏蔽 - 只顯示最後四位數字。到目前爲止,我一直未能找到解決辦法 - 如果信用卡號碼的長度不一樣呢?它會更好,如果我能掩蓋前12位數字,除非它以3開頭,則只有面膜第11在SQL Server中掩蓋信用卡號碼
回答
您必須重新處理付款(信用)卡數據的處理,並立即。否則,您的公司可能會失去處理支付卡的能力,您可能會被解僱。如果這些純文本號碼受到未經授權的來源的威脅...
首先,您需要加密您的支付卡名稱,號碼和到期日期。然後,您將需要進行數據庫備份,將其放在磁帶上,並將其置於異地。然後,清除所有現有的數據庫備份,因爲這些備份包含純文本信用卡號 - 根據Payment Card Industry,這是一個很大的禁止否。
最安全的做法是將四個最右邊的數字存儲在表中另一個加密列中。然後,您只需選擇此字段,然後在客戶端解密(請記住,您必須確保支付卡號碼在「通過線路」[又名LAN或WAN或Internet連接時]加密)。將該號碼顯示爲「以####結尾的帳戶」或類似的內容。
最簡單的答案是:
UPDATE dbo.MyLittleSecurityBreach
SET CreditCardNumber = RIGHT(CreditCardNumber, 4);
不要打擾存儲*屏蔽數據庫中的字符,有什麼好處?如果您有這種類型,則知道Amex是15個字符,其他都是16.在演示時添加11或12個掩碼字符。所有人都說,如果你沒有聽取建議來加密這些數據,我強烈建議你建議你的僱主,你需要有人來幫助數據安全。這是一場等待發生的災難。
乾杯 - 我很感激所有的關注! –
+1「MyLittleSecurityBreach」 –
- 1. 掩蔽信用卡號碼
- 2. 信用卡中的掩碼號碼
- 3. 有沒有更好的方法來掩蓋在Python中的信用卡號碼?
- 4. 以密碼格式掩蓋信用卡號碼的一些數字
- 5. 替換信用卡號碼
- 6. 掩蓋信號的原因是什麼?
- 7. 在Django中掩蓋密碼
- 8. preg_replace掩蓋部分的電話號碼
- 9. 掩蓋社會安全號碼
- 10. 驗證信用卡信息 - CVV號碼
- 11. sig_atomic_t在linux信號掩碼函數中的用法
- 12. 信用卡號碼和Java中
- 13. sed中的正則表達式掩碼信用卡
- 14. SQL Server:更新表 - 數據掩碼
- 15. 使用星號掩蓋用戶輸入
- 16. 如何在c中掩蓋密碼?
- 17. 加密解密信用卡號碼
- 18. 儲存信用卡號碼 - PCI?
- 19. 檢查信用卡號碼的驗證
- 20. 按號碼確定信用卡類型?
- 21. 信用卡號碼格式表達
- 22. 沙箱拒絕信用卡號碼
- 23. 信用卡號碼驗證算法
- 24. 結合信用卡網絡的位掩碼枚舉
- 25. RegEx在文檔中查找信用卡號碼不起作用
- 26. 掩蓋java中的密碼字段
- 27. 掩蓋SQL Server數據庫模式的方法?
- 28. 我應該在Android中存儲信用卡號碼?
- 29. 如何在iphone中加密信用卡號碼
- 30. 用javascript掩蓋IP's
如果你正在存儲信用卡號碼,你應該考慮加密它們。 – Russell
我怎麼能這樣做呢? –
http://stackoverflow.com/questions/2211685/sql-server-2008-pci-compliance-pertains-to-pci-as-well-as-symmetric-keys –