Схемы аутентификации служб на основе REST WCF

У меня есть простая схема аутентификации для набора полуобщественных REST API, которые мы создаем:

                  /-----------------------\
                  | Client POST's ID/Pass |
                  | to an Auth Service    |
                  \-----------------------/
   [Client] ------------POST----------------------> [Service/Authenticate]
                                                             |
                                             /-------------------------------\
                                             |  Service checks credentials   |
   [Client] <---------Session Cookie-------  | and generates a session token |
      |                                      |         in a cookie.          |
      |                                      \-------------------------------/
      |
   [Client] -----------GET /w Cookie -------------> [Service/Something]
                               |                                          
              /----------------------------------\
              |  Client must pass session cookie |
              |      with each API request       |
              |       or will get a 401.         |
              \----------------------------------/

Это хорошо работает, потому что клиенту никогда не нужно ничего делать, кроме как получить cookie, а затем передать его. Для браузерных приложений это происходит автоматически браузером, для не браузерных приложений довольно просто сохранить куки и отправлять его с каждым запросом.

Тем не менее, я не нашел хорошего подхода для первоначального рукопожатия из браузерных приложений. Например, если все это происходит с использованием техники AJAX, что мешает пользователю получить доступ к идентификатору / паролю, который клиент использует для рукопожатия со службой?

Похоже, что это единственный камень преткновения в этом подходе, и я в тупике.

Ответы на вопрос(2)

Ваш ответ на вопрос