Прежде всего, я бы ничего не изменил в Identity Framework, если бы не мог наблюдать за эффектами. Если вы настаиваете, вы можете проверить, что происходит самостоятельно. Но вам нужно удалить поля?
Если отношение пользователь-арендатор равно один-ко-многим , то tenantId не должен быть полем ApplicationUser, а должен храниться в отдельной таблице, например UserClaims .
Вы можете добавить несколько tenantId в качестве заявки одного и того же типа, например http://tenant.company.com/Id.. Затем он станет набором значений, как это происходит с ролями.
Если вы не хотите этого, вы можете использовать различные типы заявок, например http://tenant.company1.com/Id, http://tenant.company2.com/Id или что-то в этом роде.
Вы можете включить только заявки, связанные с арендатором, которые могут быть определены, например, по привязке сайта или URL.
Этот дизайн позволяет пользователю войти в систему, используя один и тот же пароль везде. Обратите внимание, что это касается личности: кто пользователь? Пользователю не нужно иметь разные пароли для каждого арендатора.
Это также упрощает смену пароля. Интересно, как выглядит ваш сценарий с несколькими записями пользователей для каждого арендатора? Будете ли вы обновлять все записи сразу при смене пароля? И как вы будете поддерживать «забытый пароль» и другие функции?