custom identity provider mongo and ef