You've already forked oauth2-proxy
mirror of
https://github.com/oauth2-proxy/oauth2-proxy.git
synced 2025-07-15 01:44:22 +02:00
Add header Injector
This commit is contained in:
@ -8,6 +8,7 @@ import (
|
||||
"io"
|
||||
"io/ioutil"
|
||||
"reflect"
|
||||
"strings"
|
||||
"time"
|
||||
"unicode/utf8"
|
||||
|
||||
@ -69,6 +70,34 @@ func (s *SessionState) String() string {
|
||||
return o + "}"
|
||||
}
|
||||
|
||||
func (s *SessionState) GetClaim(claim string) string {
|
||||
if s == nil {
|
||||
return ""
|
||||
}
|
||||
switch claim {
|
||||
case "access_token":
|
||||
return s.AccessToken
|
||||
case "id_token":
|
||||
return s.IDToken
|
||||
case "created_at":
|
||||
return s.CreatedAt.String()
|
||||
case "expires_on":
|
||||
return s.ExpiresOn.String()
|
||||
case "refresh_token":
|
||||
return s.RefreshToken
|
||||
case "email":
|
||||
return s.Email
|
||||
case "user":
|
||||
return s.User
|
||||
case "groups":
|
||||
return strings.Join(s.Groups, ",")
|
||||
case "preferred_username":
|
||||
return s.PreferredUsername
|
||||
default:
|
||||
return ""
|
||||
}
|
||||
}
|
||||
|
||||
// EncodeSessionState returns an encrypted, lz4 compressed, MessagePack encoded session
|
||||
func (s *SessionState) EncodeSessionState(c encryption.Cipher, compress bool) ([]byte, error) {
|
||||
packed, err := msgpack.Marshal(s)
|
||||
|
Reference in New Issue
Block a user