#android #security #authentication #odata #azure-sql-database
#Android #Безопасность #аутентификация #odata #azure-sql-database
Вопрос:
Моя база данных расположена по адресу SQLAzure, и я пытаюсь использовать OData для получения записей. Я использовал java-библиотеку oData4j при разработке приложения для Android. Все работает нормально.
Я могу извлекать данные из SQLAzure, используя библиотеку oData4j, но проблема в том…
Если кто-то получит URL моего файла SVC, он сможет легко получить мою базу данных и поиграть с ней. поэтому я хочу установить аутентификацию таким образом, чтобы только авторизованный пользователь мог извлекать данные и работать с ними.
Как я могу этого добиться. Я не создал OData PRoducer или SVC-файл. Все это делается с помощью SQLAzure.
спасибо
Ответ №1:
В блоге есть серия сообщений о службах OData и аутентификации:http://blogs.msdn.com/b/astoriateam/archive/tags/authentication
Ответ №2:
Вы смотрели на ключи доступа ACS? Я лично ими не пользовался, но это предназначено для предоставления формы федеративной идентификации, чтобы вы могли управлять тем, кто может использовать службу OData. ACS — это услуга, предоставляемая платформой Azure.
Поскольку вы можете сопоставить каждый ACS с конкретным пользователем базы данных, у вас есть полная свобода гарантировать, что только авторизованные люди смогут получить доступ к вашим данным.
Ответ №3:
Взгляните на следующий пост. Здесь есть ссылки на записи в блоге Astoria, связанные с odata и аутентификацией:http://kashyapas.com/2011/05/odata-and-authetication
Это должно дать вам подсказки
Ответ №4:
Может помочь пример приложения для Windows Azure Toolkit для Android.
Как: Использовать образец приложения Android в Windows Azure Toolkit для Android