mirror of
https://github.com/bpg/terraform-provider-proxmox.git
synced 2025-06-30 02:31:10 +00:00
Token logins using root@pam!sometoken=uuid are not considered by PVE as 'root' logins, and fail to change VM's arch. Make sure the provider does not try to set/change VM's arch. Co-authored-by: Pavel Boldyrev <627562+bpg@users.noreply.github.com>
28 lines
901 B
Go
28 lines
901 B
Go
/*
|
|
* This Source Code Form is subject to the terms of the Mozilla Public
|
|
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
* file, You can obtain one at https://mozilla.org/MPL/2.0/.
|
|
*/
|
|
|
|
package api
|
|
|
|
import (
|
|
"context"
|
|
"net/http"
|
|
)
|
|
|
|
// Authenticator is an interface for adding authentication data to a request.
|
|
// The authenticator is also aware of the authentication context, e.g. if it
|
|
// is configured to use the root user.
|
|
type Authenticator interface {
|
|
// IsRoot returns true if the authenticator is configured to use the root
|
|
IsRoot() bool
|
|
|
|
// IsRootTicket returns true if the authenticator is configured to use the root directly using a login ticket.
|
|
// (root using token is weaker, cannot change VM arch)
|
|
IsRootTicket() bool
|
|
|
|
// AuthenticateRequest adds authentication data to a new request.
|
|
AuthenticateRequest(ctx context.Context, req *http.Request) error
|
|
}
|