Андрей Галкин, спасибо! Про Identity читал и немного юзал - грубо говоря набор правил и алгоритмов для учета пользователей и для их авторизации (эт конечно слишком упрощено). Но вопрос именно про то как взаимодействовать с IdentityServer. Пользователей тянуть неоткуда, их создавать самим.
Алексей Немиро: Пока не забыл хочу сказать Спасибо за дельные ответы. Вот в описании Вашего сайта указано что необходимо при запросе передавать секретный ключи и идентификатор приложения. Для чего нужен идентификатор приложения? Зачем использовать секретный ключ?, если токен и так можно периодически менять и даже если его кто-то узнает, то это будет временно и он изменится. Секретный ключ позволяет избавиться от аутентификации в Web Api?
То есть, допустим, у клиента будет андроид или десктопное приложение для вызова моего апи. Получается ему каждый раз при запуске новом своего приложения, если он токен не сохранил или срок действия токена истек, нужно будет перед началом обмена вызвать метод аутентификации?
В некоторых, попадавшихся мне на глаза АПИ (коммерческих и не только) для вызова какого либо метода в параметре передается некий ключ похожий на GUID или даже два таких, например в DADATA. Назревает очередной вопрос: как это и чем поможет?
Maa-Kut: Просто перед каждой серией вызова метода(ов) необходимо сначала вызывать метод авторизации с получением токена. Да и токен ведь нельзя ли потом из заголовка перехватить? Может конечно я хочу нечто идеальное и невозможное, чтобы вызывать свои методы без такой мудреной последовательности действий)
Так изначально планировал. Но как отфильтровать тех, кто не авторизован (им метод тоже должен быть доступен для пробы но определенное количество раз)? Есть ли способ отсекать нежелательные запросы без обращения к бд, или с минимальным количеством обращений? Как отделить одного не авторизованного от другого?
Сергей: Даже ответить Вам не могу так как не знаю вообще как нужно это делать (вот и хотелось бы узнать как правильнее). Использую аутентификацию и авторизацию Asp Identity.
Сергей: CORS или не CORS пока не интересует. Сейчас главный вопрос как это дело реализовать. Метанит читал не раз. Но, во-первых, примеры простые. Во-вторых, не все рабочие. Вцелом получается в источниках отдельно об web api написано, отдельно про аутентификацию написано, отдельно про MVC написано. А как организовать все вместе - нет. Если для реализации АПИ я хочу использовать авторизацию на основе токенов можно будет ли ее использовать для всего сайта (MVC)? И как лучше реализовать аутентификацию и авторизацию в апи? Сервисы , которые попадались мне на глаза, иногда для своих методов просят указывать что то типа ключа похожего на Guid. Для чего это может использоваться?
Сергей: Api должен быть доступен только зарегистрированным пользователям и имеющим определенные права-роли(в дальнейшем буду контролировать). То есть человек зарегистрировался. Затем если захотел доп функционал - оплатил - имеет доступ к методу API.
"Не все так просто в Датском Королевстве". К сожалению, адреса пишут иногда настолько удивительным образом, что и нормальный человек поймет не с первого раза. К примеру, есть регион Москва, а есть Московская область. И вот их путают местами. Тут тогда лучше начинать поиск с улицы и населенного пункта.
Первая статья попадалась. Но там в самом начале оговорка о том, что ошибки не критичны и считается что адреса написаны без ошибок. Вторая и третья про способы хранения адресов. В моем случае адреса в 99% неправильно написаны - орфографически ошибки и ошибки написания самого адреса. Индекса почтового нет и его нужно найти
Олег Гамега: касаемо ContentProvider. В документации написано что его используют, если есть необходимость в предоставлении данных другим приложениях. Но не раз встречал примеры, в которых его используют только для одного приложения. Для чего же он тогда нужен? Не проще ли просто использовать репозиторий если все данные для одного приложения?
Есть ли какие-нибудь наглядные примеры проектов (а то я так и не нагуглил хороших) в которых реализована работа с БД? В частности хотя бы простой вывод и редактирование списка, а то возникают сложности с организацией обновления списка после редактирования элементов (как уведомить один фрагмент из другого). Это скорее вопрос в алгоритме, но ничего дельного найти не могу
Может и лучше отдельный вопрос задать, но здесь попробую: кто-нибудь уже пользовался Биндингом? Есть ли какие то подводные амни? Для меня это вообще "лепота" после WPF