mirror of
https://github.com/matter-labs/vault-auth-tee.git
synced 2025-07-21 15:53:55 +02:00
36 lines
917 B
Go
36 lines
917 B
Go
// SPDX-License-Identifier: MPL-2.0
|
||
// Copyright (c) HashiCorp, Inc.
|
||
// Copyright (c) Matter Labs
|
||
|
||
package main
|
||
|
||
import (
|
||
"os"
|
||
|
||
hclog "github.com/hashicorp/go-hclog"
|
||
"github.com/hashicorp/vault/api"
|
||
"github.com/hashicorp/vault/sdk/plugin"
|
||
|
||
"github.com/matter-labs/vault-auth-tee/tee"
|
||
)
|
||
|
||
func main() {
|
||
apiClientMeta := &api.PluginAPIClientMeta{}
|
||
flags := apiClientMeta.FlagSet()
|
||
flags.Parse(os.Args[1:])
|
||
|
||
tlsConfig := apiClientMeta.GetTLSConfig()
|
||
tlsProviderFunc := api.VaultPluginTLSProvider(tlsConfig)
|
||
|
||
if err := plugin.ServeMultiplex(&plugin.ServeOpts{
|
||
BackendFactoryFunc: tee.Factory,
|
||
// set the TLSProviderFunc so that the plugin maintains backwards
|
||
// compatibility with Vault versions that don’t support plugin AutoMTLS
|
||
TLSProviderFunc: tlsProviderFunc,
|
||
}); err != nil {
|
||
logger := hclog.New(&hclog.LoggerOptions{})
|
||
|
||
logger.Error("plugin shutting down", "error", err)
|
||
os.Exit(1)
|
||
}
|
||
}
|