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

Azure应用的Application ID与Client Secret安全存储及访问方法咨询

Power BI嵌入开发中敏感凭据的存储方案(.NET 6后端)

推荐的存储方式

1. .NET 6内置机密管理器(本地开发阶段)

  • 仅用于本地开发,避免敏感信息提交到代码仓库
  • 操作步骤:
    • 右键项目 → 管理用户机密,自动生成secrets.json文件
    • 在文件中添加键值对:
      {
        "PowerBI:ApplicationId": "你的应用ID",
        "PowerBI:ClientSecret": "你的客户端密钥"
      }
      
    • 代码中通过IConfiguration注入访问:
      private readonly IConfiguration _config;
      public YourService(IConfiguration config)
      {
          _config = config;
      }
      
      // 获取凭据
      var appId = _config["PowerBI:ApplicationId"];
      var clientSecret = _config["PowerBI:ClientSecret"];
      

2. 环境变量(部署阶段)

  • 适配不同部署环境(开发/测试/生产),无需修改代码
  • 操作方式:
    • 在服务器/容器中设置环境变量,格式为PowerBI__ApplicationId和PowerBI__ClientSecret(双下划线对应配置层级)
    • 代码中直接通过IConfiguration读取,逻辑和本地开发一致

3. Azure Key Vault(企业级生产环境)

  • 适合高安全要求场景,集中管理敏感凭据,支持权限控制和密钥自动轮换
  • 操作步骤:
    • 在Azure中创建Key Vault,将ApplicationId和ClientSecret添加为机密
    • 项目中安装Azure.Extensions.AspNetCore.Configuration.Secrets包
    • 在Program.cs中配置加载Key Vault:
      var builder = WebApplication.CreateBuilder(args);
      builder.Configuration.AddAzureKeyVault(
          new Uri("你的Key Vault URI"),
          new DefaultAzureCredential());
      
    • 代码中通过IConfiguration读取的方式保持不变

不推荐的方式

  • 明文存储在app.config或appsettings.json:极易泄露敏感信息
  • 存储到业务数据库:每次请求都需查询数据库,降低性能,且数据库本身存在泄露风险

前端(Vue)注意事项

前端绝对不能直接存储或访问Application ID和Client Secret,所有Power BI嵌入逻辑必须通过后端接口完成,前端仅需从后端获取嵌入令牌即可

内容的提问来源于stack exchange,提问作者Lê Quốc Huy

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.29 12:02:37