add expiration from OIDC token to machine
This commit is contained in:
parent
4e2c4f92d3
commit
7157e14aff
3 changed files with 9 additions and 1 deletions
|
@ -176,6 +176,7 @@ func (api headscaleV1APIServer) RegisterMachine(
|
|||
machine, err := api.h.RegisterMachineFromAuthCallback(
|
||||
request.GetKey(),
|
||||
request.GetNamespace(),
|
||||
nil,
|
||||
RegisterMethodCLI,
|
||||
)
|
||||
if err != nil {
|
||||
|
|
|
@ -852,6 +852,7 @@ func getTags(
|
|||
func (h *Headscale) RegisterMachineFromAuthCallback(
|
||||
nodeKeyStr string,
|
||||
namespaceName string,
|
||||
machineExpiry *time.Time,
|
||||
registrationMethod string,
|
||||
) (*Machine, error) {
|
||||
nodeKey := key.NodePublic{}
|
||||
|
@ -885,6 +886,10 @@ func (h *Headscale) RegisterMachineFromAuthCallback(
|
|||
registrationMachine.NamespaceID = namespace.ID
|
||||
registrationMachine.RegisterMethod = registrationMethod
|
||||
|
||||
if machineExpiry != nil {
|
||||
registrationMachine.Expiry = machineExpiry
|
||||
}
|
||||
|
||||
machine, err := h.RegisterMachine(
|
||||
registrationMachine,
|
||||
)
|
||||
|
|
4
oidc.go
4
oidc.go
|
@ -236,7 +236,7 @@ func (h *Headscale) OIDCCallback(
|
|||
return
|
||||
}
|
||||
|
||||
if err := h.registerMachineForOIDCCallback(writer, namespace, nodeKey); err != nil {
|
||||
if err := h.registerMachineForOIDCCallback(writer, namespace, nodeKey, idToken.Expiry); err != nil {
|
||||
return
|
||||
}
|
||||
|
||||
|
@ -679,10 +679,12 @@ func (h *Headscale) registerMachineForOIDCCallback(
|
|||
writer http.ResponseWriter,
|
||||
namespace *Namespace,
|
||||
nodeKey *key.NodePublic,
|
||||
expiry time.Time,
|
||||
) error {
|
||||
if _, err := h.RegisterMachineFromAuthCallback(
|
||||
nodeKey.String(),
|
||||
namespace.Name,
|
||||
&expiry,
|
||||
RegisterMethodOIDC,
|
||||
); err != nil {
|
||||
log.Error().
|
||||
|
|
Loading…
Reference in a new issue