code: func (sf *SigFilter) Apply(message *cb.Envelope) error {
  	signedData, err := message.AsSignedData()
  
  	if err != nil {
  		return fmt.Errorf("could not convert message to signedData: %s", err)
  	}
  
  	policy, ok := sf.support.PolicyManager().GetPolicy(sf.policyName)
  	if !ok {
  		return fmt.Errorf("could not find policy %s", sf.policyName)
  	}
  
  	err = policy.Evaluate(signedData)
  	if err != nil {
  		return errors.Wrap(errors.WithStack(ErrPermissionDenied), err.Error())
  	}
  	return nil
  }
docs: // Apply applies the policy given, resulting in Reject or Forward, never Accept