我有一个nginx服务器验证客户端CAC证书。然后,nginx将客户端验证的用户名转发(作为HTTP标头)到我的流星应用程序。
在我的流星应用程序中,在服务器端我有
Meteor.onConnection(function(conn) {
// username = conn.httpHeaders['username-from-cert']
// If user doesn't exist, call Accounts.createUser()
// else <-- ISSUE HERE
})
我的问题是在创建帐户后登录用户。我正在为客户端创建一个随机密码(因为nginx正在为我做身份验证)如何告诉客户端这个密码,让客户端自动登录?
目标:
我正在阅读的所有内容都涉及用户从客户端代码登录,但我无法从服务器登录用户。我应该怎么做呢?
答案 0 :(得分:1)
您希望注册自己的登录处理程序,该处理程序返回userId,类似于https://github.com/fongandrew/meteor-login-as-user。我会说只是使用他们的包装,但我相信流星包装正在走向NPM。
此外,请确保在代理处删除了帽子HTTP标头,以便客户无法控制更改它...