mirror of https://github.com/k3s-io/k3s
Fix use of agent creds for secrets-encrypt and config validate
Signed-off-by: Brad Davidson <brad.davidson@rancher.com>pull/4895/head
parent
3970bc001a
commit
4decce56a3
|
@ -25,7 +25,7 @@ func commandPrep(app *cli.Context, cfg *cmds.Server) (config.Control, *clientacc
|
||||||
var err error
|
var err error
|
||||||
// hide process arguments from ps output, since they may contain
|
// hide process arguments from ps output, since they may contain
|
||||||
// database credentials or other secrets.
|
// database credentials or other secrets.
|
||||||
gspt.SetProcTitle(os.Args[0] + " encrypt")
|
gspt.SetProcTitle(os.Args[0] + " secrets-encrypt")
|
||||||
|
|
||||||
controlConfig.DataDir, err = server.ResolveDataDir(cfg.DataDir)
|
controlConfig.DataDir, err = server.ResolveDataDir(cfg.DataDir)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
@ -47,7 +47,7 @@ func commandPrep(app *cli.Context, cfg *cmds.Server) (config.Control, *clientacc
|
||||||
}
|
}
|
||||||
controlConfig.EncryptForce = cfg.EncryptForce
|
controlConfig.EncryptForce = cfg.EncryptForce
|
||||||
controlConfig.EncryptSkip = cfg.EncryptSkip
|
controlConfig.EncryptSkip = cfg.EncryptSkip
|
||||||
info, err := clientaccess.ParseAndValidateTokenForUser(cmds.ServerConfig.ServerURL, controlConfig.Token, "node")
|
info, err := clientaccess.ParseAndValidateTokenForUser(cmds.ServerConfig.ServerURL, controlConfig.Token, "server")
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return controlConfig, nil, err
|
return controlConfig, nil, err
|
||||||
}
|
}
|
||||||
|
|
|
@ -635,7 +635,7 @@ func (c *Cluster) Snapshot(ctx context.Context, config *config.Control) error {
|
||||||
|
|
||||||
// compareConfig verifies that the config of the joining control plane node coincides with the cluster's config
|
// compareConfig verifies that the config of the joining control plane node coincides with the cluster's config
|
||||||
func (c *Cluster) compareConfig() error {
|
func (c *Cluster) compareConfig() error {
|
||||||
agentClientAccessInfo, err := clientaccess.ParseAndValidateTokenForUser(c.config.JoinURL, c.config.Token, "node")
|
agentClientAccessInfo, err := clientaccess.ParseAndValidateTokenForUser(c.config.JoinURL, c.config.AgentToken, "node")
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
|
@ -48,8 +48,6 @@ func router(ctx context.Context, config *Config, cfg *cmds.Server) http.Handler
|
||||||
authed.Path(prefix + "/server-ca.crt").Handler(fileHandler(serverConfig.Runtime.ServerCA))
|
authed.Path(prefix + "/server-ca.crt").Handler(fileHandler(serverConfig.Runtime.ServerCA))
|
||||||
authed.Path(prefix + "/config").Handler(configHandler(serverConfig, cfg))
|
authed.Path(prefix + "/config").Handler(configHandler(serverConfig, cfg))
|
||||||
authed.Path(prefix + "/readyz").Handler(readyzHandler(serverConfig))
|
authed.Path(prefix + "/readyz").Handler(readyzHandler(serverConfig))
|
||||||
authed.Path(prefix + "/encrypt/status").Handler(encryptionStatusHandler(serverConfig))
|
|
||||||
authed.Path(prefix + "/encrypt/config").Handler(encryptionConfigHandler(ctx, serverConfig))
|
|
||||||
|
|
||||||
nodeAuthed := mux.NewRouter()
|
nodeAuthed := mux.NewRouter()
|
||||||
nodeAuthed.Use(authMiddleware(serverConfig, "system:nodes"))
|
nodeAuthed.Use(authMiddleware(serverConfig, "system:nodes"))
|
||||||
|
@ -59,6 +57,8 @@ func router(ctx context.Context, config *Config, cfg *cmds.Server) http.Handler
|
||||||
serverAuthed := mux.NewRouter()
|
serverAuthed := mux.NewRouter()
|
||||||
serverAuthed.Use(authMiddleware(serverConfig, version.Program+":server"))
|
serverAuthed.Use(authMiddleware(serverConfig, version.Program+":server"))
|
||||||
serverAuthed.NotFoundHandler = nodeAuthed
|
serverAuthed.NotFoundHandler = nodeAuthed
|
||||||
|
serverAuthed.Path(prefix + "/encrypt/status").Handler(encryptionStatusHandler(serverConfig))
|
||||||
|
serverAuthed.Path(prefix + "/encrypt/config").Handler(encryptionConfigHandler(ctx, serverConfig))
|
||||||
serverAuthed.Path("/db/info").Handler(nodeAuthed)
|
serverAuthed.Path("/db/info").Handler(nodeAuthed)
|
||||||
if serverConfig.Runtime.HTTPBootstrap {
|
if serverConfig.Runtime.HTTPBootstrap {
|
||||||
serverAuthed.Path(prefix + "/server-bootstrap").Handler(bootstrap.Handler(&serverConfig.Runtime.ControlRuntimeBootstrap))
|
serverAuthed.Path(prefix + "/server-bootstrap").Handler(bootstrap.Handler(&serverConfig.Runtime.ControlRuntimeBootstrap))
|
||||||
|
|
Loading…
Reference in New Issue