.net WCF服务器组件正在获取过期的用户名

.net WCF服务器组件正在获取过期的用户名,.net,wcf,authentication,active-directory,.net,Wcf,Authentication,Active Directory,我正在覆盖系统.IdentityModel.Policy.IAuthorizationPolicy.Evaluate,如下所示: public bool Evaluate(EvaluationContext evaluationContext,ref object state) { var ids = (IList<IIdentity>)evaluationContext.Properties["Identities"]; var userName = ids[0].

我正在覆盖系统.IdentityModel.Policy.IAuthorizationPolicy.Evaluate,如下所示:

public bool Evaluate(EvaluationContext evaluationContext,ref object state)
{
    var ids = (IList<IIdentity>)evaluationContext.Properties["Identities"];
    var userName = ids[0].Name;

    // look up "userName" in a database to check for app. permissions

}
public bool Evaluate(EvaluationContext EvaluationContext,ref对象状态)
{
var id=(IList)evaluationContext.Properties[“标识”];
var userName=ids[0]。名称;
//在数据库中查找“用户名”以检查应用程序权限
}
最近,其中一个用户在Active Directory中更改了用户名。她可以用她的新用户名登录到她的Windows框,但是当她尝试运行我们应用程序的客户端时,服务器会在上面代码中的“userName”变量中获得她的用户名,这会弄乱我们的身份验证(因为她的旧用户名不再在我们的数据库中)

另一条信息:只有当她连接到生产服务器上的服务器代码时,才会发生这种情况。我们在QA服务器上运行相同的服务器代码,但它没有这个问题(QA服务器代码获得了正确的(新的)用户名)

你知道会发生什么吗

编辑:他们重新启动了Prod服务器,问题得到解决。仍然想知道可能发生了什么,是否会再次发生