Я использую NetTcpBinding с клиентом WPF. Я хочу знать, может ли CallBackChanel (OperationContext.Current.GetCallbackChannel) быть подделан каким-то другим ... i meen, могу ли я быть уверенным, если я сохраню этот объект CallBack в списке, этот обратный вызов может ' т быть использованы кем-то еще ...WCF - Могу ли я безопасно использовать CallbackChannel для идентификации аутентифицированных клиентов?
Exemple:
private class ClientCallBack
{
public IDuplexServiceCallBack CallBack { get; set; }
public long UserId { get; set; }
public bool IsAuthenticate { get; set; }
public DateTime LastPing { get; set; }
public DateTime LastPong { get; set; }
public bool Fault { get; set; }
public long Ping { get; set; }
}
static List<ClientCallBack> Clients;
public void Login(string UserName, string Password)
{
var auth = new AutentificationService();
var user = auth.Login(UserName, Password, true, null);
if (user != null)
{
Clients.Add(new ClientCallBack()
{
CallBack = OperationContext.Current.GetCallbackChannel<IDuplexServiceCallBack>();,
Fault = false,
IsAutenticate = true,
LastPing = DateTime.Now,
LastPong = DateTime.Now,
Ping = 0,
UserId = user.Id
});
}
}
public void action() {
var client = Clients.FirstOrDefault(o => o.CallBack == OperationContext.Current.GetCallbackChannel<IDuplexServiceCallBack>(););
if (client != null && client.IsAutenticate)
{
//This client is authenticated
}
}
возможно для некоторых один использовать CALLBACK кого-то другого?
танки
танк ты :) ответишь на мой вопрос :) – Benoit