Re: [Webpush] Application server authentication new years edition
Costin Manolache <costin@gmail.com> Wed, 06 January 2016 18:02 UTC
Return-Path: <costin@gmail.com>
X-Original-To: webpush@ietfa.amsl.com
Delivered-To: webpush@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 6B0CD1A0053 for <webpush@ietfa.amsl.com>; Wed, 6 Jan 2016 10:02:01 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.999
X-Spam-Level:
X-Spam-Status: No, score=-1.999 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, SPF_PASS=-0.001] autolearn=ham
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id owwC6aOIvoGx for <webpush@ietfa.amsl.com>; Wed, 6 Jan 2016 10:01:58 -0800 (PST)
Received: from mail-oi0-x229.google.com (mail-oi0-x229.google.com [IPv6:2607:f8b0:4003:c06::229]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 366401A0031 for <webpush@ietf.org>; Wed, 6 Jan 2016 10:01:58 -0800 (PST)
Received: by mail-oi0-x229.google.com with SMTP id y66so298261832oig.0 for <webpush@ietf.org>; Wed, 06 Jan 2016 10:01:58 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=srHe8Z+Z6knAzptY+V3RtxSrXiBS9MzFd8vOSGnghUs=; b=q7EYEZbzD8iQ1bPZSJnnU3s2yztvUGgHVm9P36rH7/ZcDUZHxcspBXnVcJo4dqQnp0 E5G5fmPkBKtha6h/aPCg7tF8s5teyuRlyOMiJdzm1pSb9H8g/K7UrVy9XHTu6EtAw16P 83KzqU4KQ3PEkb/Auh1AbAfUOhUUdQ4BeBPpaTHWaT5p+CpOKSmxP/xjyZtpxyU6J7Wd 8Uu84EKEMmWrCNW5K3QmAVSWGwL5p10RqIMGpaE6/K8eucOgO3nwDbMtYrCgEfvHx6kl RL5ccNPr3An11DtysJFHQVetUJHIN9msvritvi2get25pAweabGiS54KefQ5fjKKN77h rhGg==
MIME-Version: 1.0
X-Received: by 10.202.204.136 with SMTP id c130mr69642935oig.93.1452103317589; Wed, 06 Jan 2016 10:01:57 -0800 (PST)
Received: by 10.76.8.74 with HTTP; Wed, 6 Jan 2016 10:01:57 -0800 (PST)
In-Reply-To: <CABkgnnUYkuu9pjuqLDhiWLNWzkr9ZfYRNny4ZvSKRTWie2bQyA@mail.gmail.com>
References: <CABkgnnXBHXfY6Gz-FKGVUUoOwyJo9zaw1rWceSqVp94FypDbJA@mail.gmail.com> <CAP8-Fq=PhUcj5aaE6dvF2_+-HmVrGDyk41QBzkVxiNMxUakoag@mail.gmail.com> <CABkgnnUYkuu9pjuqLDhiWLNWzkr9ZfYRNny4ZvSKRTWie2bQyA@mail.gmail.com>
Date: Wed, 06 Jan 2016 10:01:57 -0800
Message-ID: <CAP8-FqnSqtMb5bT14tkycYXOOP+Xmoa9SMjuP5KkeN_ri+_NVQ@mail.gmail.com>
From: Costin Manolache <costin@gmail.com>
To: Martin Thomson <martin.thomson@gmail.com>
Content-Type: multipart/alternative; boundary="001a1137b1126c149e0528ae263f"
Archived-At: <http://mailarchive.ietf.org/arch/msg/webpush/91wzfAgAHyo5JeDSGnABlnySbYU>
Cc: Ben Bangert <bbangert@mozilla.com>, Costin Manolache <costin@google.com>, "webpush@ietf.org" <webpush@ietf.org>
Subject: Re: [Webpush] Application server authentication new years edition
X-BeenThere: webpush@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: Discussion of potential IETF work on a web push protocol <webpush.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/webpush>, <mailto:webpush-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/webpush/>
List-Post: <mailto:webpush@ietf.org>
List-Help: <mailto:webpush-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/webpush>, <mailto:webpush-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 06 Jan 2016 18:02:01 -0000
On Wed, Jan 6, 2016 at 1:16 AM, Martin Thomson <martin.thomson@gmail.com> wrote: > On 6 January 2016 at 15:55, Costin Manolache <costin@gmail.com> wrote: > > It is important to define what "voluntary" means :-). My understanding is > > that it involves > > a choice made by an entity, either the app server and push service. > > I hope that the draft makes it clear enough: "voluntary" refers to the > choice at the app server whether to provide this information. > > > The only 'voluntary' choice an app server has is to not use > > a push service and UAs that requires authentication/authorization. > > Right, and I don't think that this is a choice we want to force people > into making. That has some fairly dire market effects. > At the same time you can't force push service providers to accept unauthenticated/unauthorized sending either. Or require them to provide unlimited (and free) service to everyone regardless of how much they're abusing/hurting users or networks. > > For authentication: 2.1(certificate) would be my preference, and is a > well > > known and established > > mechanism, followed by 2.6, 2.3 > > Both 2.1 (certs) and 2.6 (token binding) require access to the TLS > connection. Token binding has the added concern that it is a new > mechanism that might not be well deployed. > > When I inquired, certs did seem possible, but Mozilla folks (JR can > speak to this better than I), had some operational concerns. JWT > hoists the authentication information up into HTTP, which was a lot > easier to manage. > How about 2.1 AND 2.3 ? Push servers should support both, clients should use what they can. I think there are some benefits in 2.1. > > > -2.4 doesn't cover authentication, > > -2.5 seems too complicated (2.5 maps to Oauth1, 2.3 to Oauth2 - we know > the > > outcome) > > I agree. We don't really know how to solve the signing problem, and > not from a lack of trying. > > > -2.2 is what we use now, but doesn't work well with 3. - subscription > > association - if > > public keys are used. > > > > For authorization - or "subscription association" - big +1 :-) > > Yeah, I like the subscription association feature too. I think that > it's an important consideration in choosing a mechanism. > And it may be the way to allow the choice on app server side - either by having an 'isAuthorizationRequired()' or an error code when attempting to subscribe without a public key. If they subscribe without the sender id, than on some push services send will fail - and they can't do anything about it. > > > For contact - each of the authentication schemes in the draft provide a > way > > to include contact info, and > > the choice for senders is to include it or not, and the choice for push > > services is to throttle/reject > > or not. The tricky part is if any additional verification will be done > by > > push services. > > I guess some providers (in particular free services) may be ok with a > more > > relaxed verification > > or even allow some rate-limited sending without contact info, I > personally > > don't mind it - if we > > can't contact a sender in case of problems we just block it. > > That's the policy that we've discussed having. I think that it is > very important to allow requests from all comers, even without > authentication. Of course, services should be prepared to cut off > those unauthenticated requests very quickly as load increases. > Of course, you have the choice and I'm very curious to know how it works, but based on our experience we are not ready to make the same choice :-) I'm personally ok to not require contact info ( with understanding that if it is missing the sender accepts some limitations ). Unfortunately it's not my choice, people who support the service may have a different opinion, and each service provider may make a choice or another. However authorization and authentication are a different story than contact info. Costin
- Re: [Webpush] Application server authentication n… Martin Thomson
- [Webpush] Application server authentication new y… Martin Thomson
- Re: [Webpush] Application server authentication n… Costin Manolache
- Re: [Webpush] Application server authentication n… Martin Thomson
- Re: [Webpush] Application server authentication n… Costin Manolache
- Re: [Webpush] Application server authentication n… jr conlin
- Re: [Webpush] Application server authentication n… Costin Manolache
- Re: [Webpush] Application server authentication n… Costin Manolache
- Re: [Webpush] Application server authentication n… Benjamin Bangert
- Re: [Webpush] Application server authentication n… Costin Manolache
- Re: [Webpush] Application server authentication n… Benjamin Bangert
- Re: [Webpush] Application server authentication n… Martin Thomson
- Re: [Webpush] Application server authentication n… Costin Manolache
- Re: [Webpush] Application server authentication n… Costin Manolache
- Re: [Webpush] Application server authentication n… Martin Thomson
- Re: [Webpush] Application server authentication n… Benjamin Bangert
- Re: [Webpush] Application server authentication n… Costin Manolache
- Re: [Webpush] Application server authentication n… Benjamin Bangert
- Re: [Webpush] Application server authentication n… Costin Manolache
- Re: [Webpush] Application server authentication n… Martin Thomson
- Re: [Webpush] Application server authentication n… Costin Manolache