[full disclosure, I've been involved in this as a gsoc mentor; moving discussion to public list.]
These are the two main sticking points, IMO. Quoth Demetrius Iatrakis <demetrius.iatra...@gmail.com>: > Only the device and refresh flows are supported. There is an > implementation of the authorization code flow (tested on macOS) here: > https://github.com/Mitsos101/plan9port/pull/1. However, it is not > included in the module as there is no good browser to plumb the URL > to. First off, for those following along at home, device flow is a browserless way of using oauth, but providers appear to often limit it beyond the point usefulness, so we'd need to find a way to make factotum communicate with a browser in order to get the tokens in. Sadly, even the netsurf port isn't enough browser to run Google's oauth login page. So, the question here becomes how to glue in a helper program between factotum and oauth. There are a few options -- using the plumber in both directions will work, but it's a bit gross -- and involves broadcasting the tokens. The only real alternative I can imagine is having a special file that factotum calls out to in the namespace, something like: /rc/bin/oauth-helper: #!/bin/rc ssh user@unix invoke-browser-and-get-token-helper > Refresh tokens are not saved to persistent storage when factotum > exits. The user must provide consent every time factotum is restarted. For this, the tokens should probably be persisted into secstore -- but there are some security implications in giving factotum long-lived access to the persistent key store. ------------------------------------------ 9fans: 9fans Permalink: https://9fans.topicbox.com/groups/9fans/T6899bf3f0654295d-M4a39ddac185f3a4de8c91e0a Delivery options: https://9fans.topicbox.com/groups/9fans/subscription