Example #1
0
    private SecretVersion AddSecretVersion(Secret secret)
    {
        SecretManagerServiceClient client = SecretManagerServiceClient.Create();

        SecretPayload payload = new SecretPayload
        {
            Data = ByteString.CopyFrom("my super secret data", Encoding.UTF8),
        };

        return(client.AddSecretVersion(secret.SecretName, payload));
    }
Example #2
0
        public IActionResult PostVersion(string id, [FromBody] string data)
        {
            var client = SecretManagerServiceClient.Create();

            var secretName = new SecretName(ProjectId, id);

            var payload = new SecretPayload
            {
                Data = ByteString.CopyFrom(data, Encoding.UTF8),
            };

            return(Ok(client.AddSecretVersion(secretName, payload)));
        }
        public void StoreSecret([FromForm] string projectId, [FromForm] string secretId)
        {
            IDatabase db = Connection.GetDatabase();

            db.StringSet("name", "redis");
            Console.WriteLine(db.StringGet("name"));
            //call SDK
            SecretManagerServiceClient client = SecretManagerServiceClient.Create();

            // Build the parent project name.
            ProjectName projectName = new ProjectName(projectId);

            // Build the secret to create.
            Secret secret = new Secret
            {
                Replication = new Replication
                {
                    Automatic = new Replication.Types.Automatic(),
                },
            };

            Secret createdSecret = client.CreateSecret(projectName, secretId, secret);

            // Build a payload.
            SecretPayload payload = new SecretPayload
            {
                Data = ByteString.CopyFrom("my super secret data", Encoding.UTF8),
            };

            // Add a secret version.
            SecretVersion createdVersion = client.AddSecretVersion(createdSecret.SecretName, payload);

            // Access the secret version.
            AccessSecretVersionResponse result = client.AccessSecretVersion(createdVersion.SecretVersionName);

            // Print the resultszxcvbnj
            //
            // WARNING: Do not print secrets in production environments. This
            // snippet is for demonstration purposes only.
            string data = result.Payload.Data.ToStringUtf8();

            Console.WriteLine($"Plaintext: {data}");
        }
Example #4
0
    public SecretVersion AddSecretVersion(
        string projectId = "my-project", string secretId = "my-secret",
        string data      = "my secret data")
    {
        // Create the client.
        SecretManagerServiceClient client = SecretManagerServiceClient.Create();

        // Build the resource name.
        SecretName secretName = new SecretName(projectId, secretId);

        // Convert the payload to bytes.
        SecretPayload payload = new SecretPayload
        {
            Data = ByteString.CopyFrom(data, Encoding.UTF8),
        };

        // Call the API.
        SecretVersion version = client.AddSecretVersion(secretName, payload);

        return(version);
    }
Example #5
0
        // GET https://undone.vault.azure.net/secrets/<SECRET_NAME>?api-version=7.0
        public async Task <HttpResponseMessage> GetValueBySecretName(string secret)
        {
            var client = new HttpClient();

            client.BaseAddress = new Uri(azProjectUrl);
            client.DefaultRequestHeaders.Accept.Clear();
            client.DefaultRequestHeaders.Accept.Add(new System.Net.Http.Headers.MediaTypeWithQualityHeaderValue("application/json"));
            client.DefaultRequestHeaders.Authorization = new System.Net.Http.Headers.AuthenticationHeaderValue("Bearer", accessToken);

            var response = await client.GetAsync("secrets/" + secret + "?api-version=7.0");

            HttpResponseMessage resp = new HttpResponseMessage();

            var content = response.Content.ReadAsStringAsync().Result;

            if (response.StatusCode == HttpStatusCode.OK)
            {
                var secretObj = JsonConvert.DeserializeObject <KeyVaultSecretPayload>(content);

                if (secretObj.contentType == "" || secretObj.contentType == null || secretObj.contentType == "null")
                {
                    resp.StatusCode = HttpStatusCode.NotFound;
                }
                else
                {
                    resp.StatusCode = HttpStatusCode.OK;
                    var resultObj = new SecretPayload();
                    resultObj.contentType = secretObj.contentType;
                    resultObj.value       = secretObj.value;

                    resp.Content = new StringContent(JsonConvert.SerializeObject(resultObj));
                }
            }
            else
            {
                resp.StatusCode = response.StatusCode;
            }

            return(resp);
        }
    public void Quickstart(string projectId = "my-project", string secretId = "my-secret")
    {
        // Create the client.
        SecretManagerServiceClient client = SecretManagerServiceClient.Create();

        // Build the parent project name.
        ProjectName projectName = new ProjectName(projectId);

        // Build the secret to create.
        Secret secret = new Secret
        {
            Replication = new Replication
            {
                Automatic = new Replication.Types.Automatic(),
            },
        };

        Secret createdSecret = client.CreateSecret(projectName, secretId, secret);

        // Build a payload.
        SecretPayload payload = new SecretPayload
        {
            Data = ByteString.CopyFrom("my super secret data", Encoding.UTF8),
        };

        // Add a secret version.
        SecretVersion createdVersion = client.AddSecretVersion(createdSecret.SecretName, payload);

        // Access the secret version.
        AccessSecretVersionResponse result = client.AccessSecretVersion(createdVersion.SecretVersionName);

        // Print the results
        //
        // WARNING: Do not print secrets in production environments. This
        // snippet is for demonstration purposes only.
        string data = result.Payload.Data.ToStringUtf8();

        Console.WriteLine($"Plaintext: {data}");
    }
Example #7
0
 public string Load(SecretPayload secret)
 {
     return(secret.Data.ToStringUtf8());
 }