freenode / ircd-seven

freenode's IRC server daemon
Other
200 stars 48 forks source link

Account-tag capability support #164

Open ivucica opened 5 years ago

ivucica commented 5 years ago

Hi,

I'd like to (safely) authenticate certain Freenode users against a web service by having them provide a token to a bot through Freenode.

I'd only like to authenticate users that are logged into a nickserv account.

Harder way involves activating identify-msg, extended-join and account-notify, then using WHOX with the a and n fields, keeping track of accounts, and only allowing PRIVMSG from a user that's in a known channel that my bot is also a member of. I'm sure I'm missing a race condition somewhere.

Easy way to do this would be to activate the account-tag capability in my bot, then have the users PRIVMSG my bot with the token generated by the web service.

In this case, there would be no need for the bot to join any channels or to keep track of the user's account; if the Freenode message includes both the correct account and the token generated by my web service, the bot can tell the web service authentication has succeeded.

Would it be feasible to complement identify-msg with account-tag?

ilbelkyr commented 5 years ago

We're definitely interested in implementing this, however it depends on implementing message tags in general per issue #170 first.