如何将对象数据存储为秘密值
问题描述:
我需要将两个字符串作为密钥库中的一个秘密值存储。 帐户=“AA”键=“1254”如何将对象数据存储为秘密值
但所有SetSecretAsync语法接受一个字符串作为秘密值..
我不知道,如果标签可以在这里revelevant。
请帮忙!
答
您可以使用Newtonsoft Json.NET序列化对象的JSON字符串:
var account = new Account { account = "aa", key = "1254" };
string json = JsonConvert.SerializeObject(account);
此字符串将包含这样的:
{"account":"aa","key":"1254"}
可存储作为秘密。
当您随后加载的秘密,你可以再使用Json.NET反序列化的字符串返回一个对象:
var account = JsonConvert.DeserializeObject<Account>(json);
至于标签,您可以使用标签来表明什么是包含在秘密中,如果你要在秘密中存储不同的对象类型(例如,不仅仅是账号),这可能很有用。标签只是键值对,所以你可以创建一个标签,像这样:
secret.Tags = new Dictionary<string, string>();
secret.Tags["Type"] = "Account";
但如果你总是会存储帐户,那么这是不是绝对必要的。
你的意思是SetSecretAsync(“aSecretIdentifier”,“account =”“aa”“key =”“1254”“”)? –
类似的东西,但我宁愿有两个分离的字符串或具有两个字符串值的对象。我无法找到解决方案来将对象作为秘密值。 – shha