You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Azure B2C App Insights日志:如何屏蔽密码声明防止开发者查看用户密码?

在Azure B2C的App Insights日志中屏蔽密码声明的方法

一、通过自定义策略过滤敏感声明

在Azure B2C自定义策略中,可通过以下操作避免密码声明被写入App Insights日志:

  • 替换密码声明值:在处理用户认证的技术配置文件中,将password类型声明的输出值替换为掩码字符串。例如在<TechnicalProfile>的<OutputClaims>节点中配置:
    <OutputClaim ClaimTypeReferenceId="password" DefaultValue="***" />
    
  • 用声明转换清空密码:定义声明转换规则,在日志记录前清空密码字段内容。示例配置如下:
    <ClaimsTransformations>
      <ClaimsTransformation Id="MaskPassword" TransformationMethod="SetClaimsStringValue">
        <InputParameters>
          <InputParameter Id="claimTypeReferenceId" DataType="string" Value="password" />
          <InputParameter Id="value" DataType="string" Value="***" />
        </InputParameters>
      </ClaimsTransformation>
    </ClaimsTransformations>
    
    随后在对应技术配置文件的<OutputClaimsTransformations>节点中引用该转换,确保日志采集前密码已被屏蔽。

二、配置App Insights数据掩码

直接在App Insights端对已采集的日志数据进行掩码处理,即使密码意外写入日志也会被自动屏蔽:

  • 进入目标App Insights资源,在左侧菜单找到“数据掩码”选项。
  • 添加新掩码规则,设置字段路径为密码声明在日志中的存储路径(例如properties.claims.password,需根据实际日志结构调整)。
  • 选择“替换为固定字符串”的掩码方式,设置替换值为***,保存规则后,后续采集的日志中密码字段会被自动替换。

三、禁用敏感声明的全局日志记录

在Azure B2C门户或自定义策略中,禁止记录包含密码的敏感声明:

  • 门户配置:登录Azure门户,进入目标B2C租户的“诊断设置”,在关联的App Insights日志配置中,排除包含敏感声明的日志类别。
  • 自定义策略配置:在<RelyingParty>节点中添加配置,明确排除password声明的日志记录:
    <RelyingParty>
      <DefaultUserJourney ReferenceId="SignUpOrSignIn" />
      <UserJourneyBehaviors>
        <JourneyInsights TelemetryEngine="ApplicationInsights" InstrumentationKey="YOUR_INSTRUMENTATION_KEY">
          <ExcludedClaims>
            <ClaimTypeReferenceId="password" />
          </ExcludedClaims>
        </JourneyInsights>
      </UserJourneyBehaviors>
    </RelyingParty>
    

内容的提问来源于stack exchange,提问作者Erkan Y.

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.11 07:15:43