首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >当IdentityModel将ShowPii设置为true时,ShowPii记录了哪些信息?

当IdentityModel将ShowPii设置为true时,ShowPii记录了哪些信息?
EN

Stack Overflow用户
提问于 2020-07-09 17:03:51
回答 2查看 10.4K关注 0票数 9

IdentityModelEventSource有一个名为ShowPII的属性,这意味着将向日志中添加可识别的个人信息(与安全性有关)。此值用于决定何时记录某些OAuth2敏感数据。

我正在努力了解哪些个人身份信息将被记录:

  • 客户身份?(又称客户密钥,消费者密钥)
  • 客户秘密?(又称消费者秘密)
  • Json网络令牌?(又名JWT)
  • 访问令牌?
  • 刷新令牌?
  • Kerberos的票?
  • PKCE值?
  • 授权代码?

我知道它无法访问用户名和密码,因为它们只与IDP直接交换。

,但我需要知道是否需要找到锁定日志文件的方法,因为它将包含构成安全漏洞的数据。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-07-15 14:13:32

这可能是IdentityModel:LogMessages.cs的日志消息

关于

我想弄清楚什么样的个人身份信息会被记录下来

我不会从那里复制粘贴日志消息(特别是,因为它们可以随时更改)。您可以自己检查,并决定什么应该被认为是PII。

但这里有一个有趣的例子:

代码语言:javascript
复制
"IDX10615: Encryption failed. No support for: Algorithm: '{0}', SecurityKey: '{1}'."

是如何使用的:

代码语言:javascript
复制
throw LogHelper.LogExceptionMessage(new SecurityTokenEncryptionFailedException(LogHelper.FormatInvariant(TokenLogMessages.IDX10615, encryptingCredentials.Enc, encryptingCredentials.Key)));

如果您将跟踪跟踪,您将发现encryptingCredentials.Key将被记录如果ShowPII = true,如果ShowPII = false将不会被记录。

当然,根据您的用例,这个特定的消息可能永远不会出现在您的日志中。并不是所有的信息都如此惊人的泄露。但你永远不会知道:

  1. 您的用例可能会更改
  2. 您可能误解了IdentityModel可以为您的用例发出的消息集。
  3. IdentityModel代码可能会更改,您可能会忘记检查消息集是否仍然安全。

所以说

如果我想办法锁定我的日志文件

是的,你绝对需要。

或者更好的是--不要在生产中使用ShowPII = true进行监视,只在开发环境中使用它来进行调试。

票数 6
EN

Stack Overflow用户

发布于 2020-07-15 13:53:47

来源的角度来看,当ShowPII启动时,它将做两件事:

  1. 参数传递给特定于库的异常及其数据类型名称。
  2. 对于所有系统异常-具有异常类型名称的替换内部消息

在这个上下文中,“特定于库”是它的完整类型名以“Microsoft.IdentityModel”开头。的一个例外(库定义了几个)。

根据您的用例,您将看到各种参数,这些参数可以用自定义异常记录。一个快速搜索FormatInvariant产生了相当多供您考虑的内容。

同样,根据您如何使用它,通过查看特定命名空间上的相关LogMessages.cs文件,您可能会更好地了解错误消息是什么。

P.S.:在附带说明中,默认的ShowPII设置是否符合GDPR标准?

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62820026

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档