package secretmanager
import "cloud.google.com/go/secretmanager/apiv1beta1"
Index ¶
- func DefaultAuthScopes() []string
- type CallOptions
- type Client
- func NewClient(ctx context.Context, opts ...option.ClientOption) (*Client, error)
- func (c *Client) AccessSecretVersion(ctx context.Context, req *secretspb.AccessSecretVersionRequest, opts ...gax.CallOption) (*secretspb.AccessSecretVersionResponse, error)
- func (c *Client) AddSecretVersion(ctx context.Context, req *secretspb.AddSecretVersionRequest, opts ...gax.CallOption) (*secretspb.SecretVersion, error)
- func (c *Client) Close() error
- func (c *Client) Connection() *grpc.ClientConn
- func (c *Client) CreateSecret(ctx context.Context, req *secretspb.CreateSecretRequest, opts ...gax.CallOption) (*secretspb.Secret, error)
- func (c *Client) DeleteSecret(ctx context.Context, req *secretspb.DeleteSecretRequest, opts ...gax.CallOption) error
- func (c *Client) DestroySecretVersion(ctx context.Context, req *secretspb.DestroySecretVersionRequest, opts ...gax.CallOption) (*secretspb.SecretVersion, error)
- func (c *Client) DisableSecretVersion(ctx context.Context, req *secretspb.DisableSecretVersionRequest, opts ...gax.CallOption) (*secretspb.SecretVersion, error)
- func (c *Client) EnableSecretVersion(ctx context.Context, req *secretspb.EnableSecretVersionRequest, opts ...gax.CallOption) (*secretspb.SecretVersion, error)
- func (c *Client) GetIamPolicy(ctx context.Context, req *iampb.GetIamPolicyRequest, opts ...gax.CallOption) (*iampb.Policy, error)
- func (c *Client) GetSecret(ctx context.Context, req *secretspb.GetSecretRequest, opts ...gax.CallOption) (*secretspb.Secret, error)
- func (c *Client) GetSecretVersion(ctx context.Context, req *secretspb.GetSecretVersionRequest, opts ...gax.CallOption) (*secretspb.SecretVersion, error)
- func (c *Client) ListSecretVersions(ctx context.Context, req *secretspb.ListSecretVersionsRequest, opts ...gax.CallOption) *SecretVersionIterator
- func (c *Client) ListSecrets(ctx context.Context, req *secretspb.ListSecretsRequest, opts ...gax.CallOption) *SecretIterator
- func (c *Client) SetIamPolicy(ctx context.Context, req *iampb.SetIamPolicyRequest, opts ...gax.CallOption) (*iampb.Policy, error)
- func (c *Client) TestIamPermissions(ctx context.Context, req *iampb.TestIamPermissionsRequest, opts ...gax.CallOption) (*iampb.TestIamPermissionsResponse, error)
- func (c *Client) UpdateSecret(ctx context.Context, req *secretspb.UpdateSecretRequest, opts ...gax.CallOption) (*secretspb.Secret, error)
- type SecretIterator
- func (it *SecretIterator) Next() (*secretspb.Secret, error)
- func (it *SecretIterator) PageInfo() *iterator.PageInfo
- type SecretVersionIterator
Examples ¶
- Client.AccessSecretVersion
- Client.AddSecretVersion
- Client.CreateSecret
- Client.DeleteSecret
- Client.DestroySecretVersion
- Client.DisableSecretVersion
- Client.EnableSecretVersion
- Client.GetIamPolicy
- Client.GetSecret
- Client.GetSecretVersion
- Client.ListSecretVersions
- Client.ListSecrets
- Client.SetIamPolicy
- Client.TestIamPermissions
- Client.UpdateSecret
- NewClient
Functions ¶
func DefaultAuthScopes ¶
func DefaultAuthScopes() []string
DefaultAuthScopes reports the default set of authentication scopes to use with this package.
Types ¶
type CallOptions ¶
type CallOptions struct { ListSecrets []gax.CallOption CreateSecret []gax.CallOption AddSecretVersion []gax.CallOption GetSecret []gax.CallOption UpdateSecret []gax.CallOption DeleteSecret []gax.CallOption ListSecretVersions []gax.CallOption GetSecretVersion []gax.CallOption AccessSecretVersion []gax.CallOption DisableSecretVersion []gax.CallOption EnableSecretVersion []gax.CallOption DestroySecretVersion []gax.CallOption SetIamPolicy []gax.CallOption GetIamPolicy []gax.CallOption TestIamPermissions []gax.CallOption }
CallOptions contains the retry settings for each method of Client.
type Client ¶
type Client struct { // The call options for this service. CallOptions *CallOptions // contains filtered or unexported fields }
Client is a client for interacting with Secret Manager API.
Methods, except Close, may be called concurrently. However, fields must not be modified concurrently with method calls.
func NewClient ¶
NewClient creates a new secret manager service client.
Secret Manager Service
Manages secrets and operations using those secrets. Implements a REST model with the following objects:
[Secret][google.cloud.secrets.v1beta1.Secret] [SecretVersion][google.cloud.secrets.v1beta1.SecretVersion]
Example¶
Code:play
package main import ( "context" secretmanager "cloud.google.com/go/secretmanager/apiv1beta1" ) func main() { ctx := context.Background() c, err := secretmanager.NewClient(ctx) if err != nil { // TODO: Handle error. } // TODO: Use client. _ = c }
func (*Client) AccessSecretVersion ¶
func (c *Client) AccessSecretVersion(ctx context.Context, req *secretspb.AccessSecretVersionRequest, opts ...gax.CallOption) (*secretspb.AccessSecretVersionResponse, error)
AccessSecretVersion accesses a [SecretVersion][google.cloud.secrets.v1beta1.SecretVersion]. This call returns the secret data.
projects/*/secrets/*/versions/latest is an alias to the latest
[SecretVersion][google.cloud.secrets.v1beta1.SecretVersion].
Code:play
Example¶
package main
import (
"context"
secretmanager "cloud.google.com/go/secretmanager/apiv1beta1"
secretspb "google.golang.org/genproto/googleapis/cloud/secrets/v1beta1"
)
func main() {
// import secretspb "google.golang.org/genproto/googleapis/cloud/secrets/v1beta1"
ctx := context.Background()
c, err := secretmanager.NewClient(ctx)
if err != nil {
// TODO: Handle error.
}
req := &secretspb.AccessSecretVersionRequest{
// TODO: Fill request struct fields.
}
resp, err := c.AccessSecretVersion(ctx, req)
if err != nil {
// TODO: Handle error.
}
// TODO: Use resp.
_ = resp
}
func (*Client) AddSecretVersion ¶
func (c *Client) AddSecretVersion(ctx context.Context, req *secretspb.AddSecretVersionRequest, opts ...gax.CallOption) (*secretspb.SecretVersion, error)
AddSecretVersion creates a new [SecretVersion][google.cloud.secrets.v1beta1.SecretVersion] containing secret data and attaches
it to an existing [Secret][google.cloud.secrets.v1beta1.Secret].
Code:play
Example¶
package main
import (
"context"
secretmanager "cloud.google.com/go/secretmanager/apiv1beta1"
secretspb "google.golang.org/genproto/googleapis/cloud/secrets/v1beta1"
)
func main() {
// import secretspb "google.golang.org/genproto/googleapis/cloud/secrets/v1beta1"
ctx := context.Background()
c, err := secretmanager.NewClient(ctx)
if err != nil {
// TODO: Handle error.
}
req := &secretspb.AddSecretVersionRequest{
// TODO: Fill request struct fields.
}
resp, err := c.AddSecretVersion(ctx, req)
if err != nil {
// TODO: Handle error.
}
// TODO: Use resp.
_ = resp
}
func (*Client) Close ¶
Close closes the connection to the API service. The user should invoke this when the client is no longer required.
func (*Client) Connection ¶
func (c *Client) Connection() *grpc.ClientConn
Connection returns the client's connection to the API service.
func (*Client) CreateSecret ¶
func (c *Client) CreateSecret(ctx context.Context, req *secretspb.CreateSecretRequest, opts ...gax.CallOption) (*secretspb.Secret, error)
CreateSecret creates a new [Secret][google.cloud.secrets.v1beta1.Secret] containing no [SecretVersions][google.cloud.secrets.v1beta1.SecretVersion].
Code:play
Example¶
package main
import (
"context"
secretmanager "cloud.google.com/go/secretmanager/apiv1beta1"
secretspb "google.golang.org/genproto/googleapis/cloud/secrets/v1beta1"
)
func main() {
// import secretspb "google.golang.org/genproto/googleapis/cloud/secrets/v1beta1"
ctx := context.Background()
c, err := secretmanager.NewClient(ctx)
if err != nil {
// TODO: Handle error.
}
req := &secretspb.CreateSecretRequest{
// TODO: Fill request struct fields.
}
resp, err := c.CreateSecret(ctx, req)
if err != nil {
// TODO: Handle error.
}
// TODO: Use resp.
_ = resp
}
func (*Client) DeleteSecret ¶
func (c *Client) DeleteSecret(ctx context.Context, req *secretspb.DeleteSecretRequest, opts ...gax.CallOption) error
DeleteSecret deletes a [Secret][google.cloud.secrets.v1beta1.Secret].
Code:play
Example¶
package main
import (
"context"
secretmanager "cloud.google.com/go/secretmanager/apiv1beta1"
secretspb "google.golang.org/genproto/googleapis/cloud/secrets/v1beta1"
)
func main() {
ctx := context.Background()
c, err := secretmanager.NewClient(ctx)
if err != nil {
// TODO: Handle error.
}
req := &secretspb.DeleteSecretRequest{
// TODO: Fill request struct fields.
}
err = c.DeleteSecret(ctx, req)
if err != nil {
// TODO: Handle error.
}
}
func (*Client) DestroySecretVersion ¶
func (c *Client) DestroySecretVersion(ctx context.Context, req *secretspb.DestroySecretVersionRequest, opts ...gax.CallOption) (*secretspb.SecretVersion, error)
DestroySecretVersion destroys a [SecretVersion][google.cloud.secrets.v1beta1.SecretVersion].
Sets the [state][google.cloud.secrets.v1beta1.SecretVersion.state] of the [SecretVersion][google.cloud.secrets.v1beta1.SecretVersion] to
[DESTROYED][google.cloud.secrets.v1beta1.SecretVersion.State.DESTROYED] and irrevocably destroys the
secret data.
Code:play
Example¶
package main
import (
"context"
secretmanager "cloud.google.com/go/secretmanager/apiv1beta1"
secretspb "google.golang.org/genproto/googleapis/cloud/secrets/v1beta1"
)
func main() {
// import secretspb "google.golang.org/genproto/googleapis/cloud/secrets/v1beta1"
ctx := context.Background()
c, err := secretmanager.NewClient(ctx)
if err != nil {
// TODO: Handle error.
}
req := &secretspb.DestroySecretVersionRequest{
// TODO: Fill request struct fields.
}
resp, err := c.DestroySecretVersion(ctx, req)
if err != nil {
// TODO: Handle error.
}
// TODO: Use resp.
_ = resp
}
func (*Client) DisableSecretVersion ¶
func (c *Client) DisableSecretVersion(ctx context.Context, req *secretspb.DisableSecretVersionRequest, opts ...gax.CallOption) (*secretspb.SecretVersion, error)
DisableSecretVersion disables a [SecretVersion][google.cloud.secrets.v1beta1.SecretVersion].
Sets the [state][google.cloud.secrets.v1beta1.SecretVersion.state] of the [SecretVersion][google.cloud.secrets.v1beta1.SecretVersion] to
[DISABLED][google.cloud.secrets.v1beta1.SecretVersion.State.DISABLED].
Code:play
Example¶
package main
import (
"context"
secretmanager "cloud.google.com/go/secretmanager/apiv1beta1"
secretspb "google.golang.org/genproto/googleapis/cloud/secrets/v1beta1"
)
func main() {
// import secretspb "google.golang.org/genproto/googleapis/cloud/secrets/v1beta1"
ctx := context.Background()
c, err := secretmanager.NewClient(ctx)
if err != nil {
// TODO: Handle error.
}
req := &secretspb.DisableSecretVersionRequest{
// TODO: Fill request struct fields.
}
resp, err := c.DisableSecretVersion(ctx, req)
if err != nil {
// TODO: Handle error.
}
// TODO: Use resp.
_ = resp
}
func (*Client) EnableSecretVersion ¶
func (c *Client) EnableSecretVersion(ctx context.Context, req *secretspb.EnableSecretVersionRequest, opts ...gax.CallOption) (*secretspb.SecretVersion, error)
EnableSecretVersion enables a [SecretVersion][google.cloud.secrets.v1beta1.SecretVersion].
Sets the [state][google.cloud.secrets.v1beta1.SecretVersion.state] of the [SecretVersion][google.cloud.secrets.v1beta1.SecretVersion] to
[ENABLED][google.cloud.secrets.v1beta1.SecretVersion.State.ENABLED].
Code:play
Example¶
package main
import (
"context"
secretmanager "cloud.google.com/go/secretmanager/apiv1beta1"
secretspb "google.golang.org/genproto/googleapis/cloud/secrets/v1beta1"
)
func main() {
// import secretspb "google.golang.org/genproto/googleapis/cloud/secrets/v1beta1"
ctx := context.Background()
c, err := secretmanager.NewClient(ctx)
if err != nil {
// TODO: Handle error.
}
req := &secretspb.EnableSecretVersionRequest{
// TODO: Fill request struct fields.
}
resp, err := c.EnableSecretVersion(ctx, req)
if err != nil {
// TODO: Handle error.
}
// TODO: Use resp.
_ = resp
}
func (*Client) GetIamPolicy ¶
func (c *Client) GetIamPolicy(ctx context.Context, req *iampb.GetIamPolicyRequest, opts ...gax.CallOption) (*iampb.Policy, error)
GetIamPolicy gets the access control policy for a secret.
Returns empty policy if the secret exists and does not have a policy set.
Code:play
Example¶
package main
import (
"context"
secretmanager "cloud.google.com/go/secretmanager/apiv1beta1"
iampb "google.golang.org/genproto/googleapis/iam/v1"
)
func main() {
// import iampb "google.golang.org/genproto/googleapis/iam/v1"
ctx := context.Background()
c, err := secretmanager.NewClient(ctx)
if err != nil {
// TODO: Handle error.
}
req := &iampb.GetIamPolicyRequest{
// TODO: Fill request struct fields.
}
resp, err := c.GetIamPolicy(ctx, req)
if err != nil {
// TODO: Handle error.
}
// TODO: Use resp.
_ = resp
}
func (*Client) GetSecret ¶
func (c *Client) GetSecret(ctx context.Context, req *secretspb.GetSecretRequest, opts ...gax.CallOption) (*secretspb.Secret, error)
GetSecret gets metadata for a given [Secret][google.cloud.secrets.v1beta1.Secret].
Code:play
Example¶
package main
import (
"context"
secretmanager "cloud.google.com/go/secretmanager/apiv1beta1"
secretspb "google.golang.org/genproto/googleapis/cloud/secrets/v1beta1"
)
func main() {
// import secretspb "google.golang.org/genproto/googleapis/cloud/secrets/v1beta1"
ctx := context.Background()
c, err := secretmanager.NewClient(ctx)
if err != nil {
// TODO: Handle error.
}
req := &secretspb.GetSecretRequest{
// TODO: Fill request struct fields.
}
resp, err := c.GetSecret(ctx, req)
if err != nil {
// TODO: Handle error.
}
// TODO: Use resp.
_ = resp
}
func (*Client) GetSecretVersion ¶
func (c *Client) GetSecretVersion(ctx context.Context, req *secretspb.GetSecretVersionRequest, opts ...gax.CallOption) (*secretspb.SecretVersion, error)
GetSecretVersion gets metadata for a [SecretVersion][google.cloud.secrets.v1beta1.SecretVersion].
projects/*/secrets/*/versions/latest is an alias to the latest
[SecretVersion][google.cloud.secrets.v1beta1.SecretVersion].
Code:play
Example¶
package main
import (
"context"
secretmanager "cloud.google.com/go/secretmanager/apiv1beta1"
secretspb "google.golang.org/genproto/googleapis/cloud/secrets/v1beta1"
)
func main() {
// import secretspb "google.golang.org/genproto/googleapis/cloud/secrets/v1beta1"
ctx := context.Background()
c, err := secretmanager.NewClient(ctx)
if err != nil {
// TODO: Handle error.
}
req := &secretspb.GetSecretVersionRequest{
// TODO: Fill request struct fields.
}
resp, err := c.GetSecretVersion(ctx, req)
if err != nil {
// TODO: Handle error.
}
// TODO: Use resp.
_ = resp
}
func (*Client) ListSecretVersions ¶
func (c *Client) ListSecretVersions(ctx context.Context, req *secretspb.ListSecretVersionsRequest, opts ...gax.CallOption) *SecretVersionIterator
ListSecretVersions lists [SecretVersions][google.cloud.secrets.v1beta1.SecretVersion]. This call does not return secret
data.
Code:play
Example¶
package main
import (
"context"
secretmanager "cloud.google.com/go/secretmanager/apiv1beta1"
"google.golang.org/api/iterator"
secretspb "google.golang.org/genproto/googleapis/cloud/secrets/v1beta1"
)
func main() {
// import secretspb "google.golang.org/genproto/googleapis/cloud/secrets/v1beta1"
// import "google.golang.org/api/iterator"
ctx := context.Background()
c, err := secretmanager.NewClient(ctx)
if err != nil {
// TODO: Handle error.
}
req := &secretspb.ListSecretVersionsRequest{
// TODO: Fill request struct fields.
}
it := c.ListSecretVersions(ctx, req)
for {
resp, err := it.Next()
if err == iterator.Done {
break
}
if err != nil {
// TODO: Handle error.
}
// TODO: Use resp.
_ = resp
}
}
func (*Client) ListSecrets ¶
func (c *Client) ListSecrets(ctx context.Context, req *secretspb.ListSecretsRequest, opts ...gax.CallOption) *SecretIterator
ListSecrets lists [Secrets][google.cloud.secrets.v1beta1.Secret].
Code:play
Example¶
package main
import (
"context"
secretmanager "cloud.google.com/go/secretmanager/apiv1beta1"
"google.golang.org/api/iterator"
secretspb "google.golang.org/genproto/googleapis/cloud/secrets/v1beta1"
)
func main() {
// import secretspb "google.golang.org/genproto/googleapis/cloud/secrets/v1beta1"
// import "google.golang.org/api/iterator"
ctx := context.Background()
c, err := secretmanager.NewClient(ctx)
if err != nil {
// TODO: Handle error.
}
req := &secretspb.ListSecretsRequest{
// TODO: Fill request struct fields.
}
it := c.ListSecrets(ctx, req)
for {
resp, err := it.Next()
if err == iterator.Done {
break
}
if err != nil {
// TODO: Handle error.
}
// TODO: Use resp.
_ = resp
}
}
func (*Client) SetIamPolicy ¶
func (c *Client) SetIamPolicy(ctx context.Context, req *iampb.SetIamPolicyRequest, opts ...gax.CallOption) (*iampb.Policy, error)
SetIamPolicy sets the access control policy on the specified secret. Replaces any existing policy.
Permissions on [SecretVersions][google.cloud.secrets.v1beta1.SecretVersion] are enforced according
to the policy set on the associated [Secret][google.cloud.secrets.v1beta1.Secret].
Code:play
Example¶
package main
import (
"context"
secretmanager "cloud.google.com/go/secretmanager/apiv1beta1"
iampb "google.golang.org/genproto/googleapis/iam/v1"
)
func main() {
// import iampb "google.golang.org/genproto/googleapis/iam/v1"
ctx := context.Background()
c, err := secretmanager.NewClient(ctx)
if err != nil {
// TODO: Handle error.
}
req := &iampb.SetIamPolicyRequest{
// TODO: Fill request struct fields.
}
resp, err := c.SetIamPolicy(ctx, req)
if err != nil {
// TODO: Handle error.
}
// TODO: Use resp.
_ = resp
}
func (*Client) TestIamPermissions ¶
func (c *Client) TestIamPermissions(ctx context.Context, req *iampb.TestIamPermissionsRequest, opts ...gax.CallOption) (*iampb.TestIamPermissionsResponse, error)
TestIamPermissions returns permissions that a caller has for the specified secret. If the secret does not exist, this call returns an empty set of permissions, not a NOT_FOUND error.
Note: This operation is designed to be used for building permission-aware
UIs and command-line tools, not for authorization checking. This operation
may “fail open” without warning.
Code:play
Example¶
package main
import (
"context"
secretmanager "cloud.google.com/go/secretmanager/apiv1beta1"
iampb "google.golang.org/genproto/googleapis/iam/v1"
)
func main() {
// import iampb "google.golang.org/genproto/googleapis/iam/v1"
ctx := context.Background()
c, err := secretmanager.NewClient(ctx)
if err != nil {
// TODO: Handle error.
}
req := &iampb.TestIamPermissionsRequest{
// TODO: Fill request struct fields.
}
resp, err := c.TestIamPermissions(ctx, req)
if err != nil {
// TODO: Handle error.
}
// TODO: Use resp.
_ = resp
}
func (*Client) UpdateSecret ¶
func (c *Client) UpdateSecret(ctx context.Context, req *secretspb.UpdateSecretRequest, opts ...gax.CallOption) (*secretspb.Secret, error)
UpdateSecret updates metadata of an existing [Secret][google.cloud.secrets.v1beta1.Secret].
Code:play
Example¶
package main
import (
"context"
secretmanager "cloud.google.com/go/secretmanager/apiv1beta1"
secretspb "google.golang.org/genproto/googleapis/cloud/secrets/v1beta1"
)
func main() {
// import secretspb "google.golang.org/genproto/googleapis/cloud/secrets/v1beta1"
ctx := context.Background()
c, err := secretmanager.NewClient(ctx)
if err != nil {
// TODO: Handle error.
}
req := &secretspb.UpdateSecretRequest{
// TODO: Fill request struct fields.
}
resp, err := c.UpdateSecret(ctx, req)
if err != nil {
// TODO: Handle error.
}
// TODO: Use resp.
_ = resp
}
type SecretIterator ¶
type SecretIterator struct { // Response is the raw response for the current page. // It must be cast to the RPC response type. // Calling Next() or InternalFetch() updates this value. Response interface{} // InternalFetch is for use by the Google Cloud Libraries only. // It is not part of the stable interface of this package. // // InternalFetch returns results from a single call to the underlying RPC. // The number of results is no greater than pageSize. // If there are no more results, nextPageToken is empty and err is nil. InternalFetch func(pageSize int, pageToken string) (results []*secretspb.Secret, nextPageToken string, err error) // contains filtered or unexported fields }
SecretIterator manages a stream of *secretspb.Secret.
func (*SecretIterator) Next ¶
func (it *SecretIterator) Next() (*secretspb.Secret, error)
Next returns the next result. Its second return value is iterator.Done if there are no more results. Once Next returns Done, all subsequent calls will return Done.
func (*SecretIterator) PageInfo ¶
func (it *SecretIterator) PageInfo() *iterator.PageInfo
PageInfo supports pagination. See the google.golang.org/api/iterator package for details.
type SecretVersionIterator ¶
type SecretVersionIterator struct { // Response is the raw response for the current page. // It must be cast to the RPC response type. // Calling Next() or InternalFetch() updates this value. Response interface{} // InternalFetch is for use by the Google Cloud Libraries only. // It is not part of the stable interface of this package. // // InternalFetch returns results from a single call to the underlying RPC. // The number of results is no greater than pageSize. // If there are no more results, nextPageToken is empty and err is nil. InternalFetch func(pageSize int, pageToken string) (results []*secretspb.SecretVersion, nextPageToken string, err error) // contains filtered or unexported fields }
SecretVersionIterator manages a stream of *secretspb.SecretVersion.
func (*SecretVersionIterator) Next ¶
func (it *SecretVersionIterator) Next() (*secretspb.SecretVersion, error)
Next returns the next result. Its second return value is iterator.Done if there are no more results. Once Next returns Done, all subsequent calls will return Done.
func (*SecretVersionIterator) PageInfo ¶
func (it *SecretVersionIterator) PageInfo() *iterator.PageInfo
PageInfo supports pagination. See the google.golang.org/api/iterator package for details.
Source Files ¶
doc.go secret_manager_client.go
- Version
- v0.50.0
- Published
- Dec 17, 2019
- Platform
- windows/amd64
- Imports
- 18 packages
- Last checked
- 52 minutes ago –
Tools for package owners.