Web services 如何获取任何web服务当前登录到服务器的用户列表?

Web services 如何获取任何web服务当前登录到服务器的用户列表?,web-services,apache,python-2.7,postgresql-9.2,Web Services,Apache,Python 2.7,Postgresql 9.2,我计划通过apache在服务器上安装bugzilla/trac、mediawiki和其他一些web服务。我想知道是否有一种方法可以跟踪所有用户(来自不同客户机ie的特定web服务的用户名)登录到服务器 我正在考虑创建一个数据库,并用它做一些逻辑工作。在此之前,如果有任何更简单的方法,那么我愿意尝试 这是我第一次使用服务器和apache 提前感谢请注意,您无法获得“登录到web应用程序的所有用户”的列表。您可以获得“最近通过身份验证的所有用户”或“具有有效身份验证令牌的所有用户”的列表,但由于we

我计划通过apache在服务器上安装bugzilla/trac、mediawiki和其他一些web服务。我想知道是否有一种方法可以跟踪所有用户(来自不同客户机ie的特定web服务的用户名)登录到服务器

我正在考虑创建一个数据库,并用它做一些逻辑工作。在此之前,如果有任何更简单的方法,那么我愿意尝试

这是我第一次使用服务器和apache


提前感谢

请注意,您无法获得“登录到web应用程序的所有用户”的列表。您可以获得“最近通过身份验证的所有用户”或“具有有效身份验证令牌的所有用户”的列表,但由于web连接的无状态性质,“当前登录”的概念是一个棘手的概念(如果我关闭浏览器窗口,我是否“注销”?如果我在一个新窗口中打开一个连接怎么办?我是否重新登录,还是一直登录?)

话虽如此,您命名的所有web应用程序都有自己的机制来处理用户身份验证。除非您配置了某种单点登录(SSO)解决方案,否则您必须单独查询每个应用程序,以获取有关当前经过身份验证的用户的信息。如果您正在使用许多web应用程序,那么设置单点登录可能非常方便,但根据所讨论的web应用程序,配置起来可能会很棘手


要小心从“客户机”的角度思考,因为这是一个棘手的概念。使用住宅或酒店互联网连接的一群人可能都来自同一ip地址,即使有许多客户。几个人可能共享一台计算机,或者有人可能打开应用程序的多个浏览器会话。

谢谢,即使他们没有注销,我也不介意。如果它们连接到服务器,那么有没有办法获取使用任何服务的机器的ip地址?当客户端向您的web应用程序发出请求时,您可以获取客户端的ip地址(例如,Apache在
REMOTE\u ADDR
变量中提供此地址)——或者至少,web应用程序显示的ip地址。如果涉及代理或NAT网关,并且多个客户端可能来自同一ip地址,则这可能是或可能不是客户端的实际地址。