 Documentation
      ¶
      Documentation
      ¶
    
    
  
    
  
    Index ¶
- Constants
- func IsPersonalAccessReviewFromSAR(sar *authorizationapi.SubjectAccessReview) bool
- func RuleMatches(a authorizer.Attributes, rule authorizationapi.PolicyRule) (bool, error)
- func ToDefaultAuthorizationAttributes(user user.Info, namespace string, in authorizationapi.Action) authorizer.Attributes
- type AuthorizationAttributeBuilder
- type ForbiddenMessageMaker
- type ForbiddenMessageResolver
- type RequestInfoFactory
- func NewBrowserSafeRequestInfoResolver(contextMapper apirequest.RequestContextMapper, authenticatedGroups sets.String, ...) RequestInfoFactory
- func NewPersonalSARRequestInfoResolver(infoFactory RequestInfoFactory) RequestInfoFactory
- func NewProjectRequestInfoResolver(infoFactory RequestInfoFactory) RequestInfoFactory
 
- type SubjectLocator
Constants ¶
      View Source
      
  
const DefaultProjectRequestForbidden = "You may not request a new project via this API."
    Variables ¶
This section is empty.
Functions ¶
func IsPersonalAccessReviewFromSAR ¶
func IsPersonalAccessReviewFromSAR(sar *authorizationapi.SubjectAccessReview) bool
IsPersonalAccessReviewFromSAR this variant handles the case where we have an SAR
func RuleMatches ¶
func RuleMatches(a authorizer.Attributes, rule authorizationapi.PolicyRule) (bool, error)
func ToDefaultAuthorizationAttributes ¶ added in v1.0.6
func ToDefaultAuthorizationAttributes(user user.Info, namespace string, in authorizationapi.Action) authorizer.Attributes
ToDefaultAuthorizationAttributes coerces Action to authorizer.Attributes.
Types ¶
type AuthorizationAttributeBuilder ¶
type AuthorizationAttributeBuilder interface {
	GetAttributes(request *http.Request) (authorizer.Attributes, error)
}
    func NewAuthorizationAttributeBuilder ¶
func NewAuthorizationAttributeBuilder(contextMapper apirequest.RequestContextMapper, infoFactory RequestInfoFactory) AuthorizationAttributeBuilder
type ForbiddenMessageMaker ¶
type ForbiddenMessageMaker interface {
	MakeMessage(attrs authorizer.Attributes) (string, error)
}
    ForbiddenMessageMaker creates a forbidden message from Attributes
type ForbiddenMessageResolver ¶
type ForbiddenMessageResolver struct {
	// contains filtered or unexported fields
}
    func NewForbiddenMessageResolver ¶
func NewForbiddenMessageResolver(projectRequestForbiddenTemplate string) *ForbiddenMessageResolver
func (*ForbiddenMessageResolver) MakeMessage ¶
func (m *ForbiddenMessageResolver) MakeMessage(attrs authorizer.Attributes) (string, error)
type RequestInfoFactory ¶ added in v1.5.0
type RequestInfoFactory interface {
	NewRequestInfo(req *http.Request) (*apirequest.RequestInfo, error)
}
    func NewBrowserSafeRequestInfoResolver ¶ added in v1.2.0
func NewBrowserSafeRequestInfoResolver(contextMapper apirequest.RequestContextMapper, authenticatedGroups sets.String, infoFactory RequestInfoFactory) RequestInfoFactory
func NewPersonalSARRequestInfoResolver ¶
func NewPersonalSARRequestInfoResolver(infoFactory RequestInfoFactory) RequestInfoFactory
func NewProjectRequestInfoResolver ¶
func NewProjectRequestInfoResolver(infoFactory RequestInfoFactory) RequestInfoFactory
type SubjectLocator ¶
type SubjectLocator interface {
	GetAllowedSubjects(attributes authorizer.Attributes) (sets.String, sets.String, error)
}
    func NewAuthorizer ¶
func NewAuthorizer(ruleResolver rulevalidation.AuthorizationRuleResolver, forbiddenMessageMaker ForbiddenMessageMaker) (authorizer.Authorizer, SubjectLocator)
       Source Files
      ¶
      Source Files
      ¶
    
- attributes.go
- attributes_builder.go
- authorizer.go
- browser_safe_request_info_resolver.go
- interfaces.go
- messages.go
- personal_subjectaccessreview.go
- project_request_info_resolver.go
 Click to show internal directories. 
   Click to hide internal directories.