Search code examples
gitazure-devopsshared-secret

Two different projects sharing secret.json locally


I have a few different git projects in Azure DevOps, some of them forked another one.

When I change something in the secret of one it is replicated in the other one as well. I don't know if it happens with other files, I have only been able to detect it in this secret.json.

I have tried to download these projects again, but the problem remains.

Can a file point to a repository that the solution itself does not point to? Where is the secret.json file or where is defined to be generated? I can't find it.

If I download one of these projects along with a non-problematic one, the latter also starts sharing the secret.json.

When we deploy several of these projects to the Staging server (some web app, others workers as backgroundservice), will they also be affected?

I have found this in that projects share this line. Is it the issue? How do I rectify this?

<PropertyGroup>
    <TargetFramework>net8.0</TargetFramework>
    <!--<Nullable>enable</Nullable>-->
    <ImplicitUsings>enable</ImplicitUsings>
    <UserSecretsId>dotnet-XXXXXXXXXXXService-XXXXXXX-XXXX-XXXX-XXXXX-XXXXXXXXXXX</UserSecretsId>
    <Version>1.0.0</Version>
  </PropertyGroup>

@Ziyang Liu-MSFT

1 - When you add a character, that same character appears in the other secret.json

2 - Yes, an Azure git repo.

3 - No, only are shared with a problematics.

4 - As we always do, cloning the repository to our location. git clone command


Solution

  • The UserSecretsId is used to link the project to a set of user secrets stored on the development machine. This is part of the Secret Manager tool, which helps keep sensitive data like connection strings, API keys, and other secrets out of your source code.

    When you right-click your project in Visual Studio and select “Manage User Secrets,” a UserSecretsId element is added to your project file. The file is placed beneath C:\Users\<username>\AppData\Roaming\Microsoft\UserSecrets\<id> where <username> matches your Windows user and <id> is a randomly generated GUID. The important thing to notice here is that the file is located outside your project directory. See more info about UserSecretsId from ASP.NET Core (not that secret) User Secrets Explained.