對於記錄事務的目的,我需要告訴用戶是否提供必要的字段/信息。 如果是,我會用*替換真實的信息。 如果不是,我會將此請求作爲失敗的請求返回「false」值。如何清理/隱藏C#中的敏感數據
以下是數據定義類和方法。
public class CreditCard
{
public string brand { get; set; }
public string billingphone { get; set; }
}
class Program
{
static void Main(string[] args)
{
CreditCard creditcard =new CreditCard(){brand="VISA", billingphone="777-111-2222"};
bool IsVerified= SanitizePaymnetData(creditcard);
}
private bool SanitizePaymnetData(ref CreditCard creditcard)
{
bool isDataSanitized = true;
if(!String.IsNullOrEmpty(creditcard.brand))
{
creditcard.brand ="*";
}
else
{
isDataSanitized = false;
}
if (!String.IsNullOrEmpty(creditcard.billingphone))
{
creditcard.billing_phone = "*";
}
else
{
isDataSanitized = false;
}
return isDataSanitized;
}
}
「SanitizePaymentData」方法看起來有點醜。 有什麼辦法讓它更乾淨/整潔?
你的問題有點文體和基於觀點。我認爲你的方法沒問題。是否有任何要求能夠揭示隱藏的數據?如果是這樣,你可能希望考慮加密你的輸出。如果不是這樣,我看起來很好 – ne1410s
爲什麼不簡單地寫「真」,如果他們被證實,而「假」,如果他們不是?日誌是否需要包含其他非敏感數據? – Jedediah
Hi @Jedediah,是的,我需要在每個請求中記錄其他非敏感數據,不管這個請求是好還是壞。 – user3174976