С Новым годом! Форум программистов, компьютерный форум, киберфорум
C#: ASP.NET Core
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.62/13: Рейтинг темы: голосов - 13, средняя оценка - 4.62
C# .NET Программист
34 / 22 / 5
Регистрация: 11.11.2016
Сообщений: 426
1

ASP.NET Identity. Информация о пользователе

08.02.2019, 21:55. Показов 2524. Ответов 6

Author24 — интернет-сервис помощи студентам
Всем привет. Пишу приложение на ASP.NET Core. Работаю с ASP.NET Identity.
Теперь вопрос. Как мне хранить дополнительную информацию о пользователе?
У меня есть вариант: записывать новые свойства в таблицу AspNetUsers. Но правильный ли подход: следовать этому варианту? То есть, я могу внести изменения в таблицу пользователей и брать данные оттуда?

Также я слышал про Claims. Что можно с помощью них хранить дополнительную информацию. Но я так и не понял, как с ними работать. Я, честно говоря, ни разу не видел ASP.NET Identity Claims в связке с БД (может это и странно звучит). Хотя таблица подобная имеется.

Вопрос

Какой правильный вариант для хранения дополнительной информации о пользователе вы посоветуете? И каким способом с ней работать?

Заранее благодарен.
0
Лучшие ответы (1)
Programming
Эксперт
9485 / 562 / 19
Регистрация: 12.04.2006
Сообщений: 11,671
Блог
08.02.2019, 21:55
Ответы с готовыми решениями:

Asp.net core identity
Добрый день. В своем проекте я хочу использовать двухуровневую систему - Web(MVC) и DAL(library)...

Identity в ASP.NET Core 2.0
Доброе время суток. Пытаюсь реализовать авторизацю с помощью Identity на asp.net core 2.0. Но...

ASP.NET Identity (Vue.JS)
Всем привет. Пишу SPA-приложение на Vue.JS. Создал регистрацию и вход через запрос Axios...

Очистка cookies в ASP.NET Core Identity
Добрый день! Подскажите, пожалуйста, каким образом можно почистить куки, если администратор поменял...

6
3683 / 2594 / 719
Регистрация: 02.08.2011
Сообщений: 6,964
08.02.2019, 22:26 2
Цитата Сообщение от Ислам2001 Посмотреть сообщение
То есть, я могу внести изменения в таблицу пользователей и брать данные оттуда?
Конечно можете, AspNetUsers содержит лишь минимальную структуру, необходимую для функционала аутентификации/авторизации.
Просто создаете свой собственный, производный тип от IdentityUser<>, и пихаете туда все что захотите.

Цитата Сообщение от Ислам2001 Посмотреть сообщение
Но я так и не понял, как с ними работать. Я, честно говоря, ни разу не видел ASP.NET Identity Claims в связке с БД
Claims придумали для удобной передачи пользовательской информации между различными сервисами.
Пока можете особо с ними не заморачиваться.

Btw, можно в OnModelCreating контекста восле вызова метода базового класса переименовать все Identity таблицы в более менее человечный вид, скажем is AspNetUsers в Users и т.д.
0
C# .NET Программист
34 / 22 / 5
Регистрация: 11.11.2016
Сообщений: 426
08.02.2019, 22:55  [ТС] 3
IamRain, я понял. Спасибо.
Тогда еще вопрос. Если у меня крупный проект, имеет ли смысл использовать Claims? И в чем его преимущество над таблицей Users?

Добавлено через 7 минут
А насчет производного класса от IdentityUser, пробовал. Но все же, когда делаешь "не по правилу", кажется, что что-то не так.
0
3683 / 2594 / 719
Регистрация: 02.08.2011
Сообщений: 6,964
08.02.2019, 23:09 4
Цитата Сообщение от Ислам2001 Посмотреть сообщение
Если у меня крупный проект, имеет ли смысл использовать Claims?
Попробуйте, просто при создании ClaimsIdentity в свойство Claims добавляется доп. информации из таблицы пользователя.

Claims используются для передачи пользовательской информации между клиентом и сервером, и между различными сервисами. Например, там может хранится информациия о ролях пользователя и т.д.
А таблица Users - персистентное хранилище информации о пользователях.

Cоответственно,

Цитата Сообщение от Ислам2001 Посмотреть сообщение
И в чем его преимущество над таблицей Users?
Ваш вопрос некорректен. Cами claims тоже хранятся в базе, в таблицах RoleClaims и UserClaims (не помню как в оригинале называются, смотрю по существущей БД, где поменял названия).
Миниатюры
ASP.NET Identity. Информация о пользователе  
0
C# .NET Программист
34 / 22 / 5
Регистрация: 11.11.2016
Сообщений: 426
08.02.2019, 23:14  [ТС] 5
Цитата Сообщение от IamRain
Ваш вопрос некорректен.
Я имел ввиду, в чем приемущество использования Claims над внесением изменений в таблицу Users?
Насчет таблиц, я знаю, что хранятся в БД.

И если можно, скинь пожалуйста ссылку на связку Claims с БД. Где информация о пользователе записывается в таблицу Claims.
0
3683 / 2594 / 719
Регистрация: 02.08.2011
Сообщений: 6,964
08.02.2019, 23:25 6
Лучший ответ Сообщение было отмечено Ислам2001 как решение

Решение

Цитата Сообщение от Ислам2001 Посмотреть сообщение
Но все же, когда делаешь "не по правилу", кажется, что что-то не так.
Это по какому такому правилу?)
При изучении чего-то нового сначала знакомятся с concept-ом, то есть как это все работает,
а потом уже можно писать как твоей душе угодно, главное чтобы не противоречило concept-у.
А не просто, как Code Monkey, бездумно по одному и тому же шаблону.

Добавлено через 8 минут
Цитата Сообщение от Ислам2001 Посмотреть сообщение
на связку Claims с БД.
IdentityUserClaim<T>
IdentityUserRole<T>

Это все часть Asp Identity, вам надо просто его подучить.
1
C# .NET Программист
34 / 22 / 5
Регистрация: 11.11.2016
Сообщений: 426
08.02.2019, 23:52  [ТС] 7
IamRain, спасибо большое. Рад был слышать ваш ответ. Я начну это использовать.
И попытаюсь все связать через Claims.
0
08.02.2019, 23:52
cpp_developer
Эксперт
20123 / 5690 / 417
Регистрация: 09.04.2010
Сообщений: 12,546
Блог
08.02.2019, 23:52
Помогаю со студенческими работами здесь

Изменить в ASP.NET Identity создание пользователя
Всем здравствуйте! Я в asp новичок и вопрос возник. Стандартно таблица AspNetUser содержит в id...

ASP.NET Core Identity (в проекте WebApi)
админам: Я не увидел разделов для кора или для веб апи, если я их пропустил, плз перенесите и не...

Использование Identity Server и ASP .Net Core 3.00 с Angular
Приложение Angular ASP Net Core создано на основе шаблона VS2019 .NetCore 3.0 с аутентификацией и...

Можно ли использовать ASP.Net Core Identity вместе с Angular?
Собственно вопрос в названии темы

Ошибка при запуске приложения ASP.Net Core Identity
Помогите с изучением ASP.Net Core Identity, первое же приложение и не получается, вылетает вот это

ASP.NET Core Identity - Из коробки или добавление самостоятельно
Всем добрый вечер. Отталкиваясь от учебных пособий в сети, существует мнение, что оптимальнее...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Блоги программистов
Обновление сайта www.historian.b­y
Reglage 05.01.2025
Обещал подвести итоги 2024 года для сайта. Однако начну с того, что изменилось за неделю. Добавил краткий урок по последовательности действий при анализе вредоносных файлов и значительно улучшил урок. . .
Как использовать GraphQL в C# с HotChocolate
Programming 05.01.2025
GraphQL — это современный подход к разработке API, который позволяет клиентам запрашивать только те данные, которые им необходимы. Это делает взаимодействие с API более гибким и эффективным по. . .
Модель полного двоичного суматора с помощью логических операций (python)
AlexSky-coder 04.01.2025
def binSum(x:list, y:list): s=^y] p=x and y for i in range(1,len(x)): s. append((x^y)^p) p=(x and y)or(p and (x or y)) return s x=list() y=list()
Это мы не проходили, это нам не задавали...(аси­­хронный счётчик с управляющим сигналом задержки).
Hrethgir 04.01.2025
Асинхронный счётчик на сумматорах (шестиразрядный по числу диодов на плате, но наверное разрядов будет больше - восемь или шестнадцать, а диоды на старшие), так как триггеры прошли тестирование и. . .
Руководство по созданию бота для Телеграм на Python
IT_Exp 04.01.2025
Боты для Телеграм представляют собой автоматизированные программы, которые выполняют различные задачи, взаимодействуя с пользователями через интерфейс мессенджера. В данной статье мы рассмотрим,. . .
Применение компонентов PrimeVue в Vue.js 3 на TypeScript
BasicMan 04.01.2025
Введение в PrimeVue и настройка окружения PrimeVue представляет собой мощную библиотеку компонентов пользовательского интерфейса для Vue. js 3, которая предоставляет разработчикам богатый набор. . .
Как стать Senior developer
cpp_developer 04.01.2025
В современной индустрии разработки программного обеспечения позиция Senior Developer представляет собой не просто следующую ступень карьерной лестницы, а качественно новый уровень профессионального. . .
Что известно о дате выхода Windows 12 и чего от нее ждать
IT_Exp 04.01.2025
В мире технологий постоянно происходят изменения, и операционные системы не являются исключением. Windows 11, выпущенная в октябре 2021 года, принесла множество инноваций и улучшений, но. . .
Что новенького в .NET Core 9
Programming 04.01.2025
Обзор ключевых изменений в . NET Core 9 Платформа . NET Core продолжает активно развиваться, и версия 9 представляет собой значительный шаг вперед в эволюции этой технологии. Новый релиз. . .
Инструкция по установке python3.13.1 в Debian 12
AlexSky-coder 03.01.2025
sudo apt update sudo apt install build-essential zlib1g-dev libncurses5-dev libgdbm-dev libnss3-dev libssl-dev libreadline-dev libffi-dev wget. . .
Затестил триггеры. архив проекта прилагаю с GOA файлами в настройках архиватора проектов.
Hrethgir 03.01.2025
В этот раз нет закольцованности, потому что от неё только глюки, как я понял, логика не вырезанная. Триггеры очень быстрые если верить измерениям с помощью анализатора от Gowin. Есть ещё регистры,. . .
Python в помощь DevOps
IT_Exp 03.01.2025
Причины использования Python в работе DevOps Python стал неотъемлемой частью мира DevOps, и это не случайно. Этот язык программирования обладает множеством преимуществ, которые делают его. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru