code: func (s *IdentityService) GetSAMLConnectors(withSecrets bool) ([]services.SAMLConnector, error) {
  	startKey := backend.Key(webPrefix, connectorsPrefix, samlPrefix, connectorsPrefix)
  	result, err := s.GetRange(context.TODO(), startKey, backend.RangeEnd(startKey), backend.NoLimit)
  	if err != nil {
  		return nil, trace.Wrap(err)
  	}
  	connectors := make([]services.SAMLConnector, len(result.Items))
  	for i, item := range result.Items {
  		conn, err := services.GetSAMLConnectorMarshaler().UnmarshalSAMLConnector(
  			item.Value, services.WithExpires(item.Expires))
  		if err != nil {
  			return nil, trace.Wrap(err)
  		}
  		if !withSecrets {
  			keyPair := conn.GetSigningKeyPair()
  			if keyPair != nil {
  				keyPair.PrivateKey = ""
  				conn.SetSigningKeyPair(keyPair)
  			}
  		}
  		connectors[i] = conn
  	}
  	return connectors, nil
  }
docs: // GetSAMLConnectors returns registered connectors
  // withSecrets includes or excludes private key values from return results