У меня есть служба WCF, снабженная конечной точкой SOAP со следующим контрактом на обслуживание:
[OperationContract]
string Login(string sAuthUserName, string sAuthUserPassword);
[OperationContract]
Consumer GetData(string sAuthKey);
[OperationContract]
bool Logout(string sAuthKey);
[OperationContract]
DataSet GetSingleByRefID(string sAuthKey, int iCommand, int iRefID);
Вызов Login () проверяет предоставленные sAuthUserName и sAuthUserPassword, генерирует хеш (sAuthKey), который будетдалее используется для аутентификации.
Как перенести это на REST?Используя следующие адреса?
/session/{sAuthUserName}/{sAuthUserPassword} [POST]
будет Login ()
/consumer/{sAuthKey} [GET]
будет GetData ()
/session/{sAuthKey}/ [DELETE]
будет Logout ()
/data/single/{sAuthKey}/{iCommand}/{iRefID} [GET]
будет GetSingleByRefID ()
Каков наилучший способ аутентификации с использованием имени пользователя и пароля?Это должно быть необходимо только один раз?И после этого REST-Consumer должен иметь возможность аутентификации с помощью своего AuthKey.