2023-09-27 04:36:23 -05:00
|
|
|
package auth
|
|
|
|
|
|
|
|
import (
|
|
|
|
"context"
|
|
|
|
|
|
|
|
"github.com/go-jose/go-jose/v3/jwt"
|
2023-10-27 01:30:33 -05:00
|
|
|
|
2023-09-27 04:36:23 -05:00
|
|
|
"github.com/grafana/grafana/pkg/services/auth/identity"
|
|
|
|
)
|
|
|
|
|
|
|
|
type IDService interface {
|
|
|
|
// SignIdentity signs a id token for provided identity that can be forwarded to plugins and external services
|
|
|
|
SignIdentity(ctx context.Context, identity identity.Requester) (string, error)
|
|
|
|
}
|
|
|
|
|
|
|
|
type IDSigner interface {
|
|
|
|
SignIDToken(ctx context.Context, claims *IDClaims) (string, error)
|
|
|
|
}
|
|
|
|
|
|
|
|
type IDClaims struct {
|
|
|
|
jwt.Claims
|
2024-01-17 02:52:05 -06:00
|
|
|
AuthenticatedBy string `json:"authenticatedBy,omitempty"`
|
2023-09-27 04:36:23 -05:00
|
|
|
}
|