Thanks Nov and Dave!

I have several questions about CIBA. Is this mailing list the
appropriate place to ask them or is there another mailing list that is
for discussions about CIBA?

Daniel Roesler
dan...@utilityapi.com


On Tue, Jan 15, 2019 at 11:01 PM Dave Tonge <dave.to...@momentumft.co.uk> wrote:
>
> Hi Daniel
>
> This is an interesting use-case. As mentioned by nov, CIBA could potentially 
> solve this problem.
> The difference would be step 9 in your user story. Instead of the user 
> entering the code at the kiosk, they would click on a link in the email (or 
> reply the text) to confirm that they grant access. This wouldn't require 
> building a costly user interface, but rather the utilities would need to 
> provide a single end-user facing route to deal with confirmations via email.
>
> From a user experience perspective, it would be nicer as the user wouldn't 
> have to enter any codes. They would simply enter their address (or some other 
> identifier) at the kiosk, wait for an email or text, click the email or reply 
> the text, and access would be granted.
>
> It is also flexible to support utilities that wanted to gain a higher lever 
> of assurance. Such utilities could ask the user for additional knowledge 
> factors without changing the flow.
>
> Dave
>
>
>
>
> On Wed, 16 Jan 2019 at 04:02, nov matake <mat...@gmail.com> wrote:
>>
>> Your use case seems fit CIBA which is being defined in OpenID Foundation.
>>
>> The section6 of CIBA spec will describe how your use case fit it.
>> https://openid.net/specs/openid-client-initiated-backchannel-authentication-core-1_0.html#rfc.section.6
>>
>> CIBA is an extension of OpenID Connect, not OAuth, but since OpenID Connect 
>> itself is an extension of OAuth2, you should be able to use it in OAuth 
>> context too.
>>
>> Cheers,
>>
>> nov
>>
>> 2019年1月16日(水) 10:25 Daniel Roesler <daniel=40utilityapi....@dmarc.ietf.org>:
>>>
>>> Thanks for the reply!
>>>
>>> Yes, that is essentially what we would like to do. We really like the
>>> "here's a code to authorize" part of device-flow, but we are trying to
>>> not require the authorization server build a user interface for the
>>> user to authenticate themselves and enter the code (because we've
>>> found it is very costly for utilities to build these interfaces). We'd
>>> much rather the user get a code directly that they can input into the
>>> client for authorization, hence reversing steps C & D in device-flow
>>> (and the client now is responsible for developing the costly user
>>> interface).
>>>
>>> However, in order to reverse C & D, steps A & B needs to provide some
>>> sort of user identifier and delivery method (so that the authorization
>>> server knows to who this authorization request is directed and how to
>>> send the user_code). In order to figure that out, we added a
>>> identification and delivery negotiation step in front of step A & B
>>> that lets the client and authorization server negotiate those things
>>> before kicking off the OTP code sending (e.g. reverse steps C & D).
>>>
>>> I'm not really sure how we'd go about building off of device-flow if
>>> we're reversing much of the process, changing what data is sent in
>>> each step, and adding a step at the start. OTP-flow is less of a
>>> "device" focused authorization and more of an on-the-go focused
>>> authorization.
>>>
>>> Our main example we sanity check this for is the "Hardware Store Kiosk" 
>>> story:
>>> 1. Heather Homeowner walks into a hardware store.
>>> 2. There's a kiosk by the lighting section offering free energy audits.
>>> 3. It says it needs to pull her energy usage data to perform the energy 
>>> audit.
>>> 4. She doesn't remember (or have) her utility login, so she enters her
>>> address instead.
>>> 6. She is asked if she'd like to receive a text or email with a
>>> verification code.
>>> 7. She selects she wants to receive a text.
>>> 8. She receives a text with a code and message about the scope of the
>>> authorization.
>>> 9. She enters the code on the kiosk.
>>> 10. The kiosk pulls her energy usage data and generates an energy audit.
>>>
>>> This story allows users who only know their address or some other
>>> basic identifier (phone number, email, etc.) to be able to get instant
>>> energy audits for lighting upgrades, solar quotes, energy star
>>> appliances, EV charging costs, etc. Unfortunately, most people only
>>> think about their energy use when they are out and about and encounter
>>> energy products (e.g. in a hardware store), so we're trying to make it
>>> easy for them to get an energy audit with minimal information input or
>>> device requirements.
>>>
>>> Thanks again,
>>> Daniel Roesler
>>> dan...@utilityapi.com
>>>
>>> On Tue, Jan 15, 2019 at 3:04 PM Samuel Erdtman <sam...@erdtman.se> wrote:
>>> >
>>> > To me this looks similar to the device flow.
>>> >
>>> > https://tools.ietf.org/html/draft-ietf-oauth-device-flow-13
>>> >
>>> > See figure 1, my interpretation of what you want to do is to split up 
>>> > step B so that the code goes via another channel and then revers the 
>>> > direction of C and D.
>>> >
>>> > So maybe you could ride on some of the work done in the device flow draft.
>>> >
>>> >
>>> >
>>> >
>>> >
>>> > On Tue, Jan 15, 2019 at 4:54 PM Daniel Roesler 
>>> > <daniel=40utilityapi....@dmarc.ietf.org> wrote:
>>> >>
>>> >> Howdy,
>>> >>
>>> >> Rifaat recommended I post to the mailing list. Specifically, I am 
>>> >> looking for a mentor and feedback on a potential new OAuth flow 
>>> >> (currently called OTP-flow).
>>> >>
>>> >> Background:
>>> >> I am a participant in the California Public Utility Commission's 
>>> >> Customer Data Access Committee (CPUC CDAC), and we are working on 
>>> >> improving utility data access to accelerate deployment of more renewable 
>>> >> and energy efficiency technologies to fight climate change.
>>> >>
>>> >> However, we are currently struggling with a use-case for which we can't 
>>> >> seem to find a good OAuth flow.
>>> >>
>>> >> Use-case:
>>> >> Utility customers want to share their utility data (e.g. historical 
>>> >> energy usage) with a client (e.g. an energy auditor, to perform some 
>>> >> energy efficiency analysis).
>>> >>
>>> >> However, there are two problems that often occur:
>>> >>
>>> >> 1) Most utility customers do not have online accounts or forgot their 
>>> >> login information. This makes typical OAuth user interface complex, 
>>> >> since you have to either create an online account in the flow or do some 
>>> >> sort of multi-step password-reset/verification process.
>>> >>
>>> >> 2) Utilities are not strongly incentivized to optimize complex UI/UX for 
>>> >> the customer in the authorization server interface. In the committee 
>>> >> we've gotten to the point where we have to specify number of clicks, div 
>>> >> height requirements, and minimum pageload times for a utility to 
>>> >> implement their OAuth flows (and then utilities want to charge rate 
>>> >> payers for the cost of each UI/UX improvement).
>>> >>
>>> >> So, we have been brainstorming possible ways around these problems, and 
>>> >> we think it may require a new type of authorization flow using one-time 
>>> >> passcodes (OTP) instead of redirecting the user to the utility for 
>>> >> normal OAuth. Luckily, even though utility customers may not have an 
>>> >> online account at the utility, the utility usually still has (a) a way 
>>> >> of uniquely identifying them and (b) a way of contacting them (phone, 
>>> >> email, etc.).
>>> >>
>>> >> I'd like to see if the OAuth working group is an appropriate place to 
>>> >> help develop this flow (or if there has already been work done such a 
>>> >> flow). I'm happy to write the initial draft, but I would very much 
>>> >> appreciate some mentorship from someone more experienced in the 
>>> >> workgroup.
>>> >>
>>> >> OTP-flow diagram and example:
>>> >> https://pastebin.com/raw/4Gx8LAQ1
>>> >>
>>> >> The OTP-flow (called Solution 1b in the committee) is a mix of OAuth 
>>> >> device-flow and authorization code flow. Since we want to avoid asking 
>>> >> utilities to implement complex authorization interfaces (problem #2 
>>> >> above), the client asks the utility to send the user_code directly to 
>>> >> the user (via text/phone/email), then the client asks the user for the 
>>> >> user_code and submits it to the utility to get an access token.
>>> >>
>>> >> Also, there is an initial step of identifying (but not authenticating) 
>>> >> the user and determining the way in which the OTP code should be sent. 
>>> >> If utilities are given some sort of non-secret user identification (e.g. 
>>> >> address, phone number, account number, etc.), they should be able to 
>>> >> send a user_code to the user that the user can give to the client for 
>>> >> authorization. Hopefully, this can shift most of the complex UI/UX 
>>> >> development cost away from the utility and onto the third party clients.
>>> >>
>>> >> Unfortunately, the energy industry can be quite behind on the latest and 
>>> >> greatest OAuth developments, but we're trying to get better :)
>>> >>
>>> >> Thanks very much,
>>> >> Daniel Roesler
>>> >> dan...@utilityapi.com
>>> >>
>>> >> _______________________________________________
>>> >> OAuth mailing list
>>> >> OAuth@ietf.org
>>> >> https://www.ietf.org/mailman/listinfo/oauth
>>>
>>> _______________________________________________
>>> OAuth mailing list
>>> OAuth@ietf.org
>>> https://www.ietf.org/mailman/listinfo/oauth
>>
>>
>>
>> --
>> nov matake
>> _______________________________________________
>> OAuth mailing list
>> OAuth@ietf.org
>> https://www.ietf.org/mailman/listinfo/oauth
>
>
>
> --
> Dave Tonge
> CTO
> Moneyhub Financial Technology, 5th Floor, 10 Temple Back, Bristol, BS1 6FL
> t: +44 (0)117 280 5120
>
> Moneyhub Enterprise is a trading style of Moneyhub Financial Technology 
> Limited which is authorised and regulated by the Financial Conduct Authority 
> ("FCA"). Moneyhub Financial Technology is entered on the Financial Services 
> Register (FRN 809360) at fca.org.uk/register. Moneyhub Financial Technology 
> is registered in England & Wales, company registration number  06909772 .
> Moneyhub Financial Technology Limited 2018 ©
>
> DISCLAIMER: This email (including any attachments) is subject to copyright, 
> and the information in it is confidential. Use of this email or of any 
> information in it other than by the addressee is unauthorised and unlawful. 
> Whilst reasonable efforts are made to ensure that any attachments are 
> virus-free, it is the recipient's sole responsibility to scan all attachments 
> for viruses. All calls and emails to and from this company may be monitored 
> and recorded for legitimate purposes relating to this company's business. Any 
> opinions expressed in this email (or in any attachments) are those of the 
> author and do not necessarily represent the opinions of Moneyhub Financial 
> Technology Limited or of any other group company.

_______________________________________________
OAuth mailing list
OAuth@ietf.org
https://www.ietf.org/mailman/listinfo/oauth

Reply via email to