code: func signedByFabricEntity(mspId string, role msp.MSPRole_MSPRoleType) *cb.SignaturePolicyEnvelope {
  	// specify the principal: it's a member of the msp we just found
  	principal := &msp.MSPPrincipal{
  		PrincipalClassification: msp.MSPPrincipal_ROLE,
  		Principal:               utils.MarshalOrPanic(&msp.MSPRole{Role: role, MspIdentifier: mspId})}
  
  	// create the policy: it requires exactly 1 signature from the first (and only) principal
  	p := &cb.SignaturePolicyEnvelope{
  		Version:    0,
  		Rule:       NOutOf(1, []*cb.SignaturePolicy{SignedBy(0)}),
  		Identities: []*msp.MSPPrincipal{principal},
  	}
  
  	return p
  }
docs: // SignedByFabricEntity creates a SignaturePolicyEnvelope
  // requiring 1 signature from any fabric entity, having the passed role, of the specified MSP