mirror of
https://github.com/tailscale/tailscale.git
synced 2025-04-25 10:14:36 +00:00

Implements a KMS input for AWS parameter to support encrypting Tailscale state Fixes #14765 Change-Id: I39c0fae4bfd60a9aec17c5ea6a61d0b57143d4ba Co-authored-by: Brad Fitzpatrick <bradfitz@tailscale.com> Signed-off-by: Lee Briggs <lee@leebriggs.co.uk>
27 lines
625 B
Go
27 lines
625 B
Go
// Copyright (c) Tailscale Inc & AUTHORS
|
|
// SPDX-License-Identifier: BSD-3-Clause
|
|
|
|
//go:build (ts_aws || (linux && (arm64 || amd64))) && !ts_omit_aws
|
|
|
|
package store
|
|
|
|
import (
|
|
"tailscale.com/ipn"
|
|
"tailscale.com/ipn/store/awsstore"
|
|
"tailscale.com/types/logger"
|
|
)
|
|
|
|
func init() {
|
|
registerAvailableExternalStores = append(registerAvailableExternalStores, registerAWSStore)
|
|
}
|
|
|
|
func registerAWSStore() {
|
|
Register("arn:", func(logf logger.Logf, arg string) (ipn.StateStore, error) {
|
|
ssmARN, opts, err := awsstore.ParseARNAndOpts(arg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
return awsstore.New(logf, ssmARN, opts...)
|
|
})
|
|
}
|