35 lines
		
	
	
		
			876 B
		
	
	
	
		
			Go
		
	
	
	
			
		
		
	
	
			35 lines
		
	
	
		
			876 B
		
	
	
	
		
			Go
		
	
	
	
| package providers
 | |
| 
 | |
| import (
 | |
| 	"fmt"
 | |
| 	"net/http"
 | |
| 	"net/url"
 | |
| 
 | |
| 	"github.com/oauth2-proxy/oauth2-proxy/v7/pkg/apis/sessions"
 | |
| )
 | |
| 
 | |
| var authorizedAccessToken = "imaginary_access_token"
 | |
| 
 | |
| func CreateAuthorizedSession() *sessions.SessionState {
 | |
| 	return &sessions.SessionState{AccessToken: authorizedAccessToken}
 | |
| }
 | |
| 
 | |
| func IsAuthorizedInHeader(reqHeader http.Header) bool {
 | |
| 	return IsAuthorizedInHeaderWithToken(reqHeader, authorizedAccessToken)
 | |
| }
 | |
| 
 | |
| func IsAuthorizedInHeaderWithToken(reqHeader http.Header, token string) bool {
 | |
| 	return reqHeader.Get("Authorization") == fmt.Sprintf("Bearer %s", token)
 | |
| }
 | |
| 
 | |
| func IsAuthorizedInURL(reqURL *url.URL) bool {
 | |
| 	return reqURL.Query().Get("access_token") == authorizedAccessToken
 | |
| }
 | |
| 
 | |
| func isAuthorizedRefreshInURLWithToken(reqURL *url.URL, token string) bool {
 | |
| 	if token == "" {
 | |
| 		return false
 | |
| 	}
 | |
| 	return reqURL.Query().Get("refresh_token") == token
 | |
| }
 |