.csproj 文件中 UserSecretsId 的用途是什么,应该隐藏还是公开?

问题描述 投票:0回答:1

我使用 BackgroundService 类和 .NET 8 创建了

一个新的 Windows Service
。这样做时,会自动生成 .csproj 文件,其中包含一个名为 UserSecretsId 的属性。该值是一个类似散列的值,并附加了我的项目名称。

由于我计划将这个项目提交到远程存储库上的源代码控制,这对我来说似乎是一个危险信号。为什么 .csproj 文件中会有用户密码,因为该文件通常会添加到源代码管理中?所以我的问题是,UserSecretsId 的目的是什么?它应该隐藏还是公开?我应该在将项目提交到源代码管理之前将其删除吗?如果应该隐藏,那么为什么会使用这个值自动生成 .csproj 文件?

这是 .csproj 文件的示例:

<Project Sdk="Microsoft.NET.Sdk.Worker">

  <PropertyGroup>
    <TargetFramework>net8.0</TargetFramework>
    <Nullable>enable</Nullable>
    <ImplicitUsings>enable</ImplicitUsings>
    <UserSecretsId>dotnet-MyService-12uaeoj7i-sdfoij-ds398u3ef-3oweu5h</UserSecretsId>
  </PropertyGroup>

  <ItemGroup>
    <PackageReference Include="Microsoft.Extensions.Hosting" Version="8.0.0" />
    <PackageReference Include="Microsoft.Extensions.Hosting.WindowsServices" Version="8.0.0" />
  </ItemGroup>
</Project>
c# .net windows-services worker-service
1个回答
0
投票

提交是安全的,你可以阅读this

© www.soinside.com 2019 - 2024. All rights reserved.