public async Task LoadAsync() { var secrets = _client.ListSecrets(_projectName); foreach (var secret in secrets) { try { if (!_loader.Load(secret)) { continue; } var secretVersionName = new SecretVersionName(secret.SecretName.ProjectId, secret.SecretName.SecretId, "latest"); var secretVersion = await _client.AccessSecretVersionAsync(secretVersionName); Set(_loader.GetKey(secret), secretVersion.Payload.Data.ToStringUtf8()); } catch (Grpc.Core.RpcException) { // This might happen if secret is created but it has no versions available // For now just ignore. Maybe in future we should log that something went wrong? } } }
public async Task <string> GetSecretValueAsync(string projectId, string secretId, string secretVersionId) { var secretName = new SecretVersionName(projectId, secretId, secretVersionId); var secret = await SecretManagerClient.AccessSecretVersionAsync(secretName); return(secret.Payload.Data.ToStringUtf8()); }
public IActionResult GetVersion(string id, string versionId) { var client = SecretManagerServiceClient.Create(); var secretVersionName = new SecretVersionName(ProjectId, id, versionId); return(Ok(client.GetSecretVersion(secretVersionName))); }
public IActionResult AccessVersion(string id, string versionId) { var client = SecretManagerServiceClient.Create(); var secretVersionName = new SecretVersionName(ProjectId, id, versionId); return(Ok(client.AccessSecretVersion(secretVersionName).Payload.Data.ToStringUtf8())); }
public void DisablesSecretVersions() { SecretVersionName secretVersionName = _fixture.SecretVersionToDisable.SecretVersionName; SecretVersion secretVersion = _sample.DisableSecretVersion( projectId: secretVersionName.ProjectId, secretId: secretVersionName.SecretId, secretVersionId: secretVersionName.SecretVersionId); Assert.Equal(SecretVersion.Types.State.Disabled, secretVersion.State); }
public void DeleteVersion(string id, string versionId) { var client = SecretManagerServiceClient.Create(); var secretVersionName = new SecretVersionName(ProjectId, id, versionId); client.DestroySecretVersion(secretVersionName); }
public void AddsSecretVersions() { SecretVersionName secretVersionName = _fixture.SecretVersion.SecretVersionName; string result = _sample.AccessSecretVersion( projectId: secretVersionName.ProjectId, secretId: secretVersionName.SecretId, secretVersionId: secretVersionName.SecretVersionId); Assert.Equal("my super secret data", result); }
public void GetsSecretVersions() { SecretVersionName secretVersionName = _fixture.SecretVersion.SecretVersionName; SecretVersion result = _sample.GetSecretVersion( projectId: secretVersionName.ProjectId, secretId: secretVersionName.SecretId, secretVersionId: secretVersionName.SecretVersionId); Assert.Equal(result.SecretVersionName.SecretVersionId, secretVersionName.SecretVersionId); }
public SecretVersion GetSecretVersion( string projectId = "my-project", string secretId = "my-secret", string secretVersionId = "123") { // Create the client. SecretManagerServiceClient client = SecretManagerServiceClient.Create(); // Build the resource name. SecretVersionName secretVersionName = new SecretVersionName(projectId, secretId, secretVersionId); // Call the API. SecretVersion version = client.GetSecretVersion(secretVersionName); return(version); }
public string getDbString() { if (dbConnectionString != null) { return(this.dbConnectionString); } else { const string secretId = "DatabaseConnectionString"; const string versionId = "3"; SecretVersionName secret = new SecretVersionName(projectId, secretId, versionId); AccessSecretVersionResponse result = client.AccessSecretVersion(secret); this.dbConnectionString = result.Payload.Data.ToStringUtf8(); return(this.dbConnectionString); } }
/// <summary> /// GetSecretValue /// Retrieve latest secret value /// </summary> /// <param name="secretKey"></param> /// <returns></returns> public string GetSecretValue(string secretKey) { // Create the client. SecretManagerServiceClient client = SecretManagerServiceClient.Create(); // Build the resource name. SecretVersionName secretVersionName = new SecretVersionName(_configuration.GcpProjectId, secretKey, "latest"); // Call the API. AccessSecretVersionResponse result = client.AccessSecretVersion(secretVersionName); // Convert the payload to a string. Payloads are bytes by default. string payload = result.Payload.Data.ToStringUtf8(); return(payload); }
private string GetDBUserName() { // Create the client. SecretManagerServiceClient client = SecretManagerServiceClient.Create(); // Build the resource name. SecretVersionName secretVersionName = new SecretVersionName( "dev-office-294516", "db-user-name", "1"); // Call the API. AccessSecretVersionResponse result = client.AccessSecretVersion(secretVersionName); // Convert the payload to a string. Payloads are bytes by default. return(result.Payload.Data.ToStringUtf8()); }
public String AccessSecretVersion( string projectId = "my-project", string secretId = "my-secret", string secretVersionId = "123") { // Create the client. SecretManagerServiceClient client = SecretManagerServiceClient.Create(); // Build the resource name. SecretVersionName secretVersionName = new SecretVersionName(projectId, secretId, secretVersionId); // Call the API. AccessSecretVersionResponse result = client.AccessSecretVersion(secretVersionName); // Convert the payload to a string. Payloads are bytes by default. String payload = result.Payload.Data.ToStringUtf8(); return(payload); }
string GetDBPassword() { // Create the client. SecretManagerServiceClient client = SecretManagerServiceClient.Create(); // Build the resource name. SecretVersionName secretVersionName = new SecretVersionName( Environment.GetEnvironmentVariable("PROJECT"), Environment.GetEnvironmentVariable("SECRET_ID"), Environment.GetEnvironmentVariable("SECRET_VER")); // Call the API. AccessSecretVersionResponse result = client.AccessSecretVersion(secretVersionName); // Convert the payload to a string. Payloads are bytes by default. return(result.Payload.Data.ToStringUtf8()); }
private async Task LoadAsync() { logger.LogDebug($"Loading secrets from project: {projectName}"); var secrets = client.ListSecretsAsync(projectName); await foreach (var secret in secrets) { var secretVersionName = new SecretVersionName(secret.SecretName.ProjectId, secret.SecretName.SecretId, "latest"); logger.LogDebug($"Loading secret: {secretVersionName}"); var version = await client.AccessSecretVersionAsync(secretVersionName); var payload = version.Payload.Data.ToStringUtf8(); Data.Add(secret.SecretName.SecretId, payload); } }
public string GetGoogleClientSecret() { SecretManagerServiceClient client = SecretManagerServiceClient.Create(); // Build the resource name. SecretVersionName secretVersionName = new SecretVersionName("protean-bus-312220", "ApiClientId", "3"); // Call the API. AccessSecretVersionResponse result = client.AccessSecretVersion(secretVersionName); // Convert the payload to a string. Payloads are bytes by default. String payload = result.Payload.Data.ToStringUtf8(); dynamic keys = JsonConvert.DeserializeObject(payload); JObject jObject = JObject.Parse(payload); JToken jKey = jObject["Authentication:Google:ClientSecret"].ToString(); return(jKey.ToString()); }
public string GetSecret() { string secretName = "SqlUserSecret"; //string region = Configuration.GetValue<string>("AWSRegion"); var projectId = Configuration.GetValue <string>("projectid"); SecretManagerServiceClient client = SecretManagerServiceClient.Create(); // Build the resource name. SecretVersionName secretVersionName = new SecretVersionName(projectId, secretName, "latest"); // Call the API. AccessSecretVersionResponse result = client.AccessSecretVersion(secretVersionName); // Convert the payload to a string. Payloads are bytes by default. String payload = result.Payload.Data.ToStringUtf8(); return(payload); // Your code goes here. }
public override void Load() { var client = SecretManagerServiceClient.Create(); var clientIdSecretName = new SecretVersionName(GcpProjectId, "Authentication__ClientId", "latest"); var clientId = client.AccessSecretVersion(clientIdSecretName)?.Payload?.Data?.ToStringUtf8(); if (!string.IsNullOrEmpty(clientId)) { _config["Authentication:ClientId"] = clientId; } var clientSecretSecretName = new SecretVersionName(GcpProjectId, "Authentication__ClientSecret", "latest"); var clientSecret = client.AccessSecretVersion(clientSecretSecretName)?.Payload?.Data?.ToStringUtf8(); if (!string.IsNullOrEmpty(clientSecret)) { _config["Authentication:ClientSecret"] = clientSecret; } base.Load(); }