Re: [sipcore] I-D Action: draft-ietf-sipcore-sip-token-authnz-02.txt

Christer Holmberg <christer.holmberg@ericsson.com> Wed, 10 July 2019 12:35 UTC

Return-Path: <christer.holmberg@ericsson.com>
X-Original-To: sipcore@ietfa.amsl.com
Delivered-To: sipcore@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 157E9120129 for <sipcore@ietfa.amsl.com>; Wed, 10 Jul 2019 05:35:26 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.001
X-Spam-Level:
X-Spam-Status: No, score=-2.001 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=ericsson.com
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 pHQt4c4AcoUo for <sipcore@ietfa.amsl.com>; Wed, 10 Jul 2019 05:35:22 -0700 (PDT)
Received: from EUR03-DB5-obe.outbound.protection.outlook.com (mail-eopbgr40045.outbound.protection.outlook.com [40.107.4.45]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id D6E61120077 for <sipcore@ietf.org>; Wed, 10 Jul 2019 05:35:21 -0700 (PDT)
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=V2bdzP/9+AQs0/kTpvUd10bY7B3d7lXTVW573wcIExOSy09FkGF3jBHUCqu1G2wDl/iPks7v0i4YiGYzqLbsXquJIV74qbe5zEAhrF+ZztEoI5+dWkIQA0vd/Zkst4YmjLquwYXYNAp63cU9d3FSxFv/Y49MjsOmxb+HBniozJ6JwaysHym9O3ZVakrYPljg/Lw4xFN3jIVWuD041M1oX2UxNMYOnnXf2HwOZSrrq+gEHB4BHB1761GnhQGoQHM6sisiAdNfkqj+jf9kLRyoYAZcQ36ERCH6hj7GowhBTmNW/048hPucFDlE7wjz2nx8HKrSuHbRiHVIutsF0CPmwA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=NaAV3EAXns6wnkAvgSwFuE1Fq9WDKKOv0nBAiNnF1qY=; b=dM9FzKydmvG0DX5WYmr7FFlr986sWl/Ad7/Y6/VTZ1WA1fcm+biHeC0xZuqImpu30ua9T0XYAN0mOHlTGvHAweer22Nei0yHMJPEB8o6RPKyZQTn6Sbloltgsfmt1hT8LcaxSJv1q8kGlaZcV5i76NqjqSpFNn6rMi0l4upWa5BSySEa53rK3F3VZ0Pe5/2fIwwcXSwAFlwaJ63WMB6cc3l/YApveBxyUZh32wF6Lp4KddI7RtWwx1B8xN8K48Azr19e/io391nxcW9JbPE7bFlWaVdKNNS8RgCqBPqPEz6HA806EgPnZPzvx6vOtYbRptEdGL8afwq9TOpali2cLQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1;spf=pass smtp.mailfrom=ericsson.com;dmarc=pass action=none header.from=ericsson.com;dkim=pass header.d=ericsson.com;arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ericsson.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=NaAV3EAXns6wnkAvgSwFuE1Fq9WDKKOv0nBAiNnF1qY=; b=QG3fJDy+G75e+E4oKB2ebYc2zVBRu0ut3dq/SO3d+x4FMz8sp7RRJtaaiBtTlKgJQN5upQ45AA/0ciPnpK6Q0yw6SSvOVBgZuYgf2tLce096tisntATuA4MZZRQ4oy0uoOiDjEo1VGnaldd2oeuRHtetCs1/63qR3XVcvb4Vgfw=
Received: from HE1PR07MB3161.eurprd07.prod.outlook.com (10.170.245.23) by HE1PR07MB4171.eurprd07.prod.outlook.com (20.176.166.24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2073.7; Wed, 10 Jul 2019 12:35:18 +0000
Received: from HE1PR07MB3161.eurprd07.prod.outlook.com ([fe80::5050:a3a9:be80:cf43]) by HE1PR07MB3161.eurprd07.prod.outlook.com ([fe80::5050:a3a9:be80:cf43%5]) with mapi id 15.20.2073.008; Wed, 10 Jul 2019 12:35:18 +0000
From: Christer Holmberg <christer.holmberg@ericsson.com>
To: Rifaat Shekh-Yusef <rifaat.ietf@gmail.com>, "Olle E. Johansson" <oej@edvina.net>
CC: "sipcore@ietf.org" <sipcore@ietf.org>, Roman Shpount <roman@telurix.com>
Thread-Topic: [sipcore] I-D Action: draft-ietf-sipcore-sip-token-authnz-02.txt
Thread-Index: AQHVNLWxruT/m/C2REGBvr04oIfCDqa/Al8AgAHwRACAACa0QIAAOvWAgACKbgCAAH00gIAARqSA///8CoCAAAq/0IAABmoAgAAeAYCAABzUAIAABQKAgAACsgCAABGcAIAABn4AgABh5YCAAFWlgIAAAYkAgAAGSICAAAHmgIAAAVOAgAAzvoA=
Date: Wed, 10 Jul 2019 12:35:18 +0000
Message-ID: <215B2FEC-9F34-4BA3-96DA-B5CC9DF6590F@ericsson.com>
References: <156249821133.14592.1211919336596009446@ietfa.amsl.com> <CAGL6epLsP_UfZMAcFLsORrR05Enu-vp=jnkgUFuKSttQm8swAw@mail.gmail.com> <c8d5c42e-ab21-80e8-3189-c8592dd02d3a@alum.mit.edu> <HE1PR07MB3161C55955B2FCED2C0F6A9993F60@HE1PR07MB3161.eurprd07.prod.outlook.com> <68ed93ae-57df-6bc7-774b-47959417abda@alum.mit.edu> <HE1PR07MB3161D46B4A44FC7E789ADDB893F10@HE1PR07MB3161.eurprd07.prod.outlook.com> <4a9787e5-b5e2-bc08-0fa0-fae6bd44148d@alum.mit.edu> <527F4C39-F065-4335-A939-6D443F1801E7@ericsson.com> <CAD5OKxuK_2+JcbGvo6LNeRbCYXWXQmhKQPNUzoZvZEOupPWyjw@mail.gmail.com> <HE1PR07MB3161612130F07C8F727A2BB693F10@HE1PR07MB3161.eurprd07.prod.outlook.com> <CAD5OKxtR-WBhfa4msbAfXoK7JowYaKK3fSCbw0cXm6SRGwkLxg@mail.gmail.com> <CAGL6epK8Z938pnMKVyWGBK=6fMzNq6+gmxro-AAO2nzvGT4jeg@mail.gmail.com> <CAD5OKxs6g+6mLbMRc9C0q5BSSn=+7HHzKf5Ya5uL-+RbhVfEaA@mail.gmail.com> <CAGL6epKfLWA=RW3T84feSud9sZ+TcpB=XRA6fvTzP-jL3h4+4A@mail.gmail.com> <CAD5OKxs3=XdOFYThY1gCu23M4nqJV-bJOSCU7-Ogn0J=xy+E3A@mail.gmail.com> <CAGL6epJWXBTcnNk3nMN3Yfsh5y6+pddQSW_MbkAdNZbmWf6_Gg@mail.gmail.com> <CAD5OKxt=sJhKGRRFPUon=JokbJ2Vb=P7GcfJ8LpXt_Yp-eOg3Q@mail.gmail.com> <393C0E68-5D0F-4AB5-B839-424C239E84A9@edvina.net> <CAGL6ep+Ovj0qQZZUvv1BA8ptNZBpp--GucJg6bbb7mUg3grN6g@mail.gmail.com> <BF387FC7-C951-420B-9C26-CC17C12738F0@edvina.net> <CAGL6epKrG1dBBKhrWKz=1Xa7Pmijscm_dwyBmA4=LdvFScQzmg@mail.gmail.com> <161D4FCD-FA4D-4494-AA72-27DF363BEA3B@edvina.net> <CAGL6epK=ma58LHQHd1=XQxBhr_-9r6xKupY6WFgs6RprFXgeew@mail.gmail.com>
In-Reply-To: <CAGL6epK=ma58LHQHd1=XQxBhr_-9r6xKupY6WFgs6RprFXgeew@mail.gmail.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
user-agent: Microsoft-MacOutlook/10.1a.0.190609
authentication-results: spf=none (sender IP is ) smtp.mailfrom=christer.holmberg@ericsson.com;
x-originating-ip: [89.166.49.243]
x-ms-publictraffictype: Email
x-ms-office365-filtering-correlation-id: 2aee02f6-1881-4a5a-dfb6-08d70533112c
x-microsoft-antispam: BCL:0; PCL:0; RULEID:(2390118)(7020095)(4652040)(8989299)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(5600148)(711020)(4605104)(1401327)(2017052603328)(7193020); SRVR:HE1PR07MB4171;
x-ms-traffictypediagnostic: HE1PR07MB4171:
x-ms-exchange-purlcount: 1
x-microsoft-antispam-prvs: <HE1PR07MB4171628BCB0563B52D2F3B5F93F00@HE1PR07MB4171.eurprd07.prod.outlook.com>
x-ms-oob-tlc-oobclassifiers: OLM:9508;
x-forefront-prvs: 0094E3478A
x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(4636009)(136003)(396003)(376002)(346002)(366004)(39860400002)(189003)(199004)(7736002)(11346002)(2616005)(476003)(68736007)(446003)(3846002)(8936002)(186003)(6116002)(44832011)(486006)(8676002)(102836004)(26005)(66066001)(81166006)(305945005)(110136005)(54906003)(316002)(33656002)(53546011)(6506007)(58126008)(99286004)(76176011)(66476007)(478600001)(66556008)(6512007)(6486002)(86362001)(53936002)(6246003)(6436002)(76116006)(229853002)(66946007)(81156014)(5660300002)(2906002)(966005)(36756003)(14444005)(71200400001)(71190400001)(4326008)(256004)(25786009)(64756008)(66446008)(6306002)(14454004); DIR:OUT; SFP:1101; SCL:1; SRVR:HE1PR07MB4171; H:HE1PR07MB3161.eurprd07.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A:1;
received-spf: None (protection.outlook.com: ericsson.com does not designate permitted sender hosts)
x-ms-exchange-senderadcheck: 1
x-microsoft-antispam-message-info: HysI9LbYAy5Y12VXEKfy7kDB6BDK2L01C6AMmOMvczgZFqih53kDPhZekinPrgrHdCsjQJT7GQp0fbttlJKFQ7aZ4dn1w47tz+uxepu6KJ4h7Jv4Og4n8QD3ATjJ+oiTneeJdBgI4fKHVkGkWWVRl6VJA+ORRYGuubFXuNpx2vgRcBHng1BAaaMIuJrVeZ9yOsEX2nIFTXc6rIgAvxiM+CHuui6LI7/xeR6mvMy9KnCbfPAsm65xY5i59Q1zEggjtxpkjOt3gs5fizRTgsCodTrzGWaN35ltsiMy/79hw2Y9HXBTf1GtMf1dZWTAnCoqIyWhk0QiT+uXmMcdpgv7qwXD34aZP/dy8v8KI3LzWWdELpgyTlQt2BNrnhdv+3LQ0O960YshQoe2FyDlmdaS5ughPp88hdEhvj0pGAPI9o0=
Content-Type: text/plain; charset="utf-8"
Content-ID: <70E6496E32BF9A43BCCDB67E6469BFFB@eurprd07.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-OriginatorOrg: ericsson.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 2aee02f6-1881-4a5a-dfb6-08d70533112c
X-MS-Exchange-CrossTenant-originalarrivaltime: 10 Jul 2019 12:35:18.3620 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 92e84ceb-fbfd-47ab-be52-080c6b87953f
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: christer.holmberg@ericsson.com
X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1PR07MB4171
Archived-At: <https://mailarchive.ietf.org/arch/msg/sipcore/g_uQdBMVCkIb2i9edJtMWADnHyA>
Subject: Re: [sipcore] I-D Action: draft-ietf-sipcore-sip-token-authnz-02.txt
X-BeenThere: sipcore@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: SIP Core Working Group <sipcore.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/sipcore>, <mailto:sipcore-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/sipcore/>
List-Post: <mailto:sipcore@ietf.org>
List-Help: <mailto:sipcore-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/sipcore>, <mailto:sipcore-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 10 Jul 2019 12:35:26 -0000

Hi,

>This does not explain the reason for such a requirement. 
>Why do you think we need to couple these together for SIP?

I don't think we should mandate them to be coupled.

If the token expires before the registration, an UA can still send a REGISTER with the new token - even if the registration is not about to expire.

Regards,

Christer





On Wed, Jul 10, 2019 at 8:25 AM Olle E. Johansson <mailto:oej@edvina.net> wrote:



On 10 Jul 2019, at 14:18, Rifaat Shekh-Yusef <mailto:rifaat.ietf@gmail.com> wrote:

The UA is expected to obtain a valid access token to get service, and should be able to use that to refresh its registration when the registration expires.
Is this coupling of expiry times needed?
Absolutely. If we grant a REGISTER expiry time that is much longer than the expiry of the token, we’re in deep waters.

Example from RFC 7635 Stun/Oauth - which I think we can borrow a lot from:

“ o The lifetime provided by the TURN server in the Allocate and
      Refresh responses MUST be less than or equal to the lifetime of
      the token.  It is RECOMMENDED that the TURN server calculate the
      maximum allowed lifetime value using the formula:

        lifetime + Delta - abs(RDnew - TS)

      The RECOMMENDED value for the allowed Delta is 5 seconds.
“

Note that they have a “MUST” on this. I think we MUST do the same :-)
/O


Regards,
 Rifaat


On Wed, Jul 10, 2019 at 7:56 AM Olle E. Johansson <mailto:oej@edvina.net> wrote:



On 10 Jul 2019, at 13:50, Rifaat Shekh-Yusef <mailto:rifaat.ietf@gmail.com> wrote:

When the UA authenticates to the AS, it obtains a number of tokens: access token and refresh token, and depends on the AS, maybe ID token. 
It is the UAs responsibility to use the refresh token to obtain a new access token before the expiry of the existing access token.
Absolutely - my thought was what the server is supposed to do. Reading the STUN/Oauth docs, I see a requirement for expiry
being less than token validity time. In SIP REGISTER/SUBSCRIBE terms, the expiry time in SIP should be less
than the time the token is valid.

 If the token expires, the server needs to reauth or deny services. It is important that no services are delivered to an expired authentication.

/O


Regards,
 Rifaat


On Wed, Jul 10, 2019 at 2:44 AM Olle E. Johansson <mailto:oej@edvina.net> wrote:



On 10 Jul 2019, at 02:53, Roman Shpount <mailto:roman@telurix.com> wrote:

On Tue, Jul 9, 2019 at 8:30 PM Rifaat Shekh-Yusef <mailto:rifaat.ietf@gmail.com> wrote:
The document clearly allows the use of access token to authenticate non-REGISTER requests when challenged in the context of the same realm. 

Whether that is needed or not is a different discussion.
Assuming the UA was able to authenticate the user and obtain an access token, then establish an authenticated TLS channel with the server, and register the user; is there a need for further challenges from server?

When the token expires, you certainly need a new token from the user. With SIP Outbound, we’re more connection oriented than before, so we should propably consider what the
server does with the connection when a token expires (if it’s not already in the draft).
/O


Typically, for SIP, user authentication is not tied to the TLS connection. One of the reasons for this is that multiple users can use the same TLS connection in federated systems. This is especially true for Confidential UA, which have trust relationship with a proxy and can maintain a secure connection to the registrar/proxy on behalf of multiple clients.

Once again, it would be much easier to discuss if you can provide a use specific case for OAuth with confidential UA. I can easily think of a OAuth use case for Public User Agent, but only have a vague idea what OAuth with Confidential UA would be. 

The example I can think of, would be some sort of hot desk application, where user allows a Local PBX to register with User Home PBX to accept calls on behalf of user in a remote location. In this case, Local PBX and User Home PBX will be federated systems which will use a single TLS connection for multiple calls or end user devices. Local PBX and User Home PBX will have a trust relationship, possibly with mutual TLS certificate authentications. A company wide directory server will be used to store actual user credentials and will be used to authenticate the user and generate the token.

Best Regards,
_____________
Roman Shpount
 
_______________________________________________
sipcore mailing list
mailto:sipcore@ietf.org
https://www.ietf.org/mailman/listinfo/sipcore

_______________________________________________
sipcore mailing list
mailto:sipcore@ietf.org
https://www.ietf.org/mailman/listinfo/sipcore