From nobody Wed Jul 13 07:41:31 2022
Return-Path: <shollenbeck@verisign.com>
X-Original-To: regext@ietfa.amsl.com
Delivered-To: regext@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1])
 by ietfa.amsl.com (Postfix) with ESMTP id 4A1D7C15A720
 for <regext@ietfa.amsl.com>; Wed, 13 Jul 2022 07:41:30 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.104
X-Spam-Level: 
X-Spam-Status: No, score=-2.104 tagged_above=-999 required=5
 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1,
 DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, HTML_FONT_LOW_CONTRAST=0.001,
 HTML_MESSAGE=0.001, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001,
 SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01,
 URIBL_BLOCKED=0.001, URIBL_DBL_BLOCKED_OPENDNS=0.001,
 URIBL_ZEN_BLOCKED_OPENDNS=0.001]
 autolearn=unavailable autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key)
 header.d=verisign.com
Received: from mail.ietf.org ([50.223.129.194])
 by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024)
 with ESMTP id zaNUgthPRL52 for <regext@ietfa.amsl.com>;
 Wed, 13 Jul 2022 07:41:25 -0700 (PDT)
Received: from mail2.verisign.com (mail2.verisign.com [72.13.63.31])
 (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 E6B1FC157B58
 for <regext@ietf.org>; Wed, 13 Jul 2022 07:41:20 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
 d=verisign.com; l=25883; q=dns/txt; s=VRSN; t=1657723282;
 h=from:to:subject:date:message-id:references:in-reply-to:
 mime-version; bh=okYOTbT2XUiypGLosYYmYFHurVgJwmVqXKc1BPhGHQU=;
 b=p5nFaWym19Z3sXfLjiGgayJCbAmHJz9wCk3SA5LcfC0T1RDmUsI+vZRV
 XM3cz1bJhmLilGGdClTGkfdJub+odFRYNXb6AZGyBRScNalj68jLXqWwg
 YUxevPbURGK+Vd23o+/zl8X0K5WjmPssiOifZYsTdHy3liacGk7gP8WsE
 hDDZ+oJiq/iDx8vdkknoN0T+FCCxOCrH91l7uCkBck/bCGsW9cLOF6CS/
 JfCOCVxClpKPw7ZTHdeAZ+nJ2HF7iWfDUhc5co3c5Mol5PErHkxb/1314
 1TDMxgr4lMHq2gR0qjv3NTnCqi4DT9ht0a2YhSsYE362BRfUfvKXO7grq Q==;
IronPort-Data: A9a23:WQnzuqNkBlN/aiLvrR3IlsFynXyQoLVcMsEvi/4bfWQNrUoigzUAn
 GJNXWiBOKuMazH0f9txaovl8kwCuJLdzdFmSQZtpSBmQkwRpJueD7x1DKtS0wC6dZSfER09v
 63yTvGacajYm1eF/k/F3oAMKRCQ7InQLlbGILes1htZGEk1Ek/NtTo5w7Rj2tEx2oDja++wk
 YiaT/P3aQfNNwFcbzp8B5Kr8HuDa9yr5Vv0FnRnDRx6lAe2e0s9VfrzFonoR5fMebS4K8bhL
 wr15Orgoj6GpUdF5uSNyd4XemVSKlLbFVbW1ioOA8BOiDAazsA5+v5T2Pbx9S67IthG9jx84
 IwliHC+desmFvXJntQwQxxCLzxVYKkfu4DaAEWn7MPGmiUqc1O0qxlvJGsMG9Qn3MtHWTsI6
 /cfMihLZxzFmfitxvSwTewEasYLdZGtZdxE/Cg9lneFXJ7KQriaK0nOzcRY2zM0i8ZEEP3dT
 9QUczt0bRvGJRZIPz/7Dbpnwbz02iWvLlW0rnrWl4Ea7Vfd9TYq75vPbPbTRfWxQupsyxPwS
 mXuuj6R7gshHOaAyD6F/3aprvfOh2X8Qo16PL+38eNujAjPnnIeEhwNVFS95/K+j2ayXttFI
 AoV9zYg668o+ySDVNTyUg2kiH+JohBaXMBfe9DW8ymH0KyN/ACUFjBeCyVfcpojtdRzTzts3
 EWPxpX3Hydp9raSTBpx64upkN97AgBNRUdqWMPOZVJtDwXLyG3rsi/ycw==
IronPort-HdrOrdr: A9a23:cTbJBa6KAHZWSzf8zAPXwP3XdLJyesId70hD6qkoc20xTiXqrb
 HLoB17726NtN9/YhAdcLy7UpVoBEmsl6KdgrNhRotKPjOHhILAFugLhrcKgQeQeBEWndQw6U
 4UScZD4arLYmSS4/yW3ODyKadG/DDOytHPuQ7x9QYVcT1X
X-IronPort-AV: E=Sophos; i="5.92,267,1650931200"; d="scan'208,217";
 a="15344485"
Received: from BRN1WNEX02.vcorp.ad.vrsn.com (10.173.153.49) by
 BRN1WNEX02.vcorp.ad.vrsn.com (10.173.153.49) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.1.2375.24; Wed, 13 Jul 2022 10:41:18 -0400
Received: from BRN1WNEX02.vcorp.ad.vrsn.com ([10.173.153.49]) by
 BRN1WNEX02.vcorp.ad.vrsn.com ([10.173.153.49]) with mapi id 15.01.2375.024;
 Wed, 13 Jul 2022 10:41:18 -0400
From: "Hollenbeck, Scott" <shollenbeck@verisign.com>
To: "Rwilhelm@PIR.org" <Rwilhelm@PIR.org>,
 "jgould=40verisign.com@dmarc.ietf.org"
 <jgould=40verisign.com@dmarc.ietf.org>, "regext@ietf.org" <regext@ietf.org>
Thread-Topic: [regext] Login/Logout Processing (was RE: I-D Action:
 draft-ietf-regext-rdap-openid-15.txt)
Thread-Index: AQHYlfErOYryTOFLcEa1k/pEddYKCK16txaAgABw+g2AASvHQA==
Date: Wed, 13 Jul 2022 14:41:18 +0000
Message-ID: <4c501148e5d84084bf9f92467e2747d5@verisign.com>
References: <920FFD8E-B060-416D-B838-61010E51C50A@verisign.com>
 <08c3a4aecaeb467eac9152b880cc85ba@verisign.com>
 <BY5PR10MB41796EC637D479D88E38E9EEC9869@BY5PR10MB4179.namprd10.prod.outlook.com>
In-Reply-To: <BY5PR10MB41796EC637D479D88E38E9EEC9869@BY5PR10MB4179.namprd10.prod.outlook.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: yes
X-MS-TNEF-Correlator: 
x-originating-ip: [10.170.148.18]
Content-Type: multipart/alternative;
 boundary="----=_NextPart_000_0043_01D896A5.15100010"
MIME-Version: 1.0
Archived-At: <https://mailarchive.ietf.org/arch/msg/regext/cVrb1qK2Z7rlvDttDma72bWnIPM>
Subject: Re: [regext] Login/Logout Processing (was RE: I-D Action:
 draft-ietf-regext-rdap-openid-15.txt)
X-BeenThere: regext@ietf.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: Registration Protocols Extensions <regext.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/regext>,
 <mailto:regext-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/regext/>
List-Post: <mailto:regext@ietf.org>
List-Help: <mailto:regext-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/regext>,
 <mailto:regext-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 13 Jul 2022 14:41:30 -0000

------=_NextPart_000_0043_01D896A5.15100010
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit

Notes below, Rick.

 

From: Rick Wilhelm <Rwilhelm@PIR.org> 
Sent: Tuesday, July 12, 2022 4:05 PM
To: Hollenbeck, Scott <shollenbeck@verisign.com>;
jgould=40verisign.com@dmarc.ietf.org; regext@ietf.org
Subject: [EXTERNAL] Re: [regext] Login/Logout Processing (was RE: I-D
Action: draft-ietf-regext-rdap-openid-15.txt)

 


Caution: This email originated from outside the organization. Do not click
links or open attachments unless you recognize the sender and know the
content is safe. 

Briefly,

 

I think that (per a point that Mario made) the situations described below
are different and might merit consideration differently. Specifically, these
situations:

 

> Let's look at the server-side options again for situations in which the
server
> receives a login followed by a login, or a logout where there's been no
> login,
> or a refresh without an active session, or a session status without an
active
> session:

 

- Login followed by login:  sounds similar to a point that Mario made
related to extending a session; seems fine, not an error

[SAH] Under certain circumstances, I now agree. A client might be serving
multiple end-users, and the server should be able to start another session
for a different user if it receives a second login request without a cookie.
If the server receives a login request with a valid cookie, though (the
server is seeing a second login request on an active session), I'd prefer to
keep command processing idempotent such that the second login isn't
processed differently than the original login was, and return an error since
the request conflicts with the current state of the server. That'll make
client processing consistent.

- logout where there has been no login:  while it might be tempting to want
to give back an error, I would argue that this gives up security info about
the client.  Therefore, is there harm in just saying "ok" ??

[SAH] Please elaborate regarding "security info". I'm inclined to return an
error because, again, the request conflicts with the current state of the
server. The client won't be misled into thinking that it ended a session
when there was no session to begin with.

- refresh without an active session:  should give back error

- session status without an active session:  should give back error

 

Thanks

Rick

 

 

 

 

From: Hollenbeck, Scott <shollenbeck@verisign.com
<mailto:shollenbeck@verisign.com> >
Date: Tuesday, July 12, 2022 at 9:17 AM
To: jgould=40verisign.com@dmarc.ietf.org
<mailto:jgould=40verisign.com@dmarc.ietf.org>
<jgould=40verisign.com@dmarc.ietf.org
<mailto:jgould=40verisign.com@dmarc.ietf.org> >, Rick Wilhelm
<Rwilhelm@PIR.org <mailto:Rwilhelm@PIR.org> >, regext@ietf.org
<mailto:regext@ietf.org>  <regext@ietf.org <mailto:regext@ietf.org> >
Subject: [EXTERNAL] RE: [regext] Login/Logout Processing (was RE: I-D
Action: draft-ietf-regext-rdap-openid-15.txt)

CAUTION: This email came from outside your organization. Don't trust emails,
links, or attachments from senders that seem suspicious or you are not
expecting.

Thanks, Jim. I'm working on -16 to address this topic and other recent
feedback. I'm planning to include text that describes error return
conditions.

Scott

> -----Original Message-----
> From: Gould, James <jgould=40verisign.com@dmarc.ietf.org
<mailto:jgould=40verisign.com@dmarc.ietf.org> >
> Sent: Tuesday, July 12, 2022 9:13 AM
> To: Hollenbeck, Scott <shollenbeck@verisign.com
<mailto:shollenbeck@verisign.com> >; Rwilhelm@PIR.org
<mailto:Rwilhelm@PIR.org> ;
> regext@ietf.org <mailto:regext@ietf.org> 
> Subject: [EXTERNAL] Re: [regext] Login/Logout Processing (was RE: I-D
> Action: draft-ietf-regext-rdap-openid-15.txt)
>
> Caution: This email originated from outside the organization. Do not click
links
> or open attachments unless you recognize the sender and know the content
> is safe.
>
> Scott,
>
> My preference is option 1, where if the request conflicts with the current
> state it needs to result in an error.
>
> --
>
> JG
>
>
>
> James Gould
> Fellow Engineer
> jgould@Verisign.com <mailto:jgould@Verisign.com>
<applewebdata://13890C55-AAE8-4BF3-A6CE-
> B4BA42740803/jgould@Verisign.com <mailto:B4BA42740803/jgould@Verisign.com>
>
>
> 703-948-3271
> 12061 Bluemont Way
> Reston, VA 20190
>
> Verisign.com <http://secure-web.cisco.com/146IYbLb06o7EQ5y-
<https://secure-web.cisco.com/14tl_My5ZME5EWUyAX5a7wWHLqYU5eMXkGAJG3kWsISx8P
Hh1liKD7ofsNq9qr59NAKu3-xshnpp-LDNozsB7tWkGqsyc1BsK6ABNp9qgUH8I2SKGdYCy4WUhm
iLVSGvuVH8QqMlnFkMAvd-xHlUM0GOyUB2fcp4OoDQs0SfGknwIrwlYg0Ef0EI96IzjnOCgXJnfv
FxNLmUeg1p5f6WVyudP1hcjvqNSA_wIWYcGcZkqxj56CR5-E_Ntq2aS_1Q0/https%3A%2F%2Fpr
otect-us.mimecast.com%2Fs%2FKdwUCOYzm8CAvABCvFYvF%3Fdomain%3Dsecure-web.cisc
o.com> 
> S9CI7Wv51aAaxl8hFAuOBaHou3sDkfQPFMQu6BUoW4k5ofYC5YtOj6XXRCKD
> HYzan_NZGxdaN0YSvV0pwQb7R9i9kzQj1h9R05Pagm54-
> 27p6uMqOMzoZGv2vinpZe2J8m4PKqdSLdJjiCepHPZ1JM1mtuI50NVmuZ8vRF
> i_0YBy7IEEjGceS0HpXLfup5UC4X63esKGLab9WHmN-
> OZdrNHmUQpEtHd1kkwxdbMiJ2nTpenX/http%3A%2F%2Fverisigninc.com%2
> F>
>
> On 7/7/22, 11:02 AM, "regext on behalf of Hollenbeck, Scott" <regext-
> bounces@ietf.org <mailto:bounces@ietf.org>  on behalf of
shollenbeck=40verisign.com@dmarc.ietf.org
<mailto:shollenbeck=40verisign.com@dmarc.ietf.org> >
> wrote:
>
>
> Thanks, Rick. Trimming things up a bit and changing the subject
> appropriately...
>
> >>> In the last sentence: Is the client required to wait until the access
> >>> token has
> >>> expired before submitting the new login request? Or can it send
> logout
> >>> and
> >>> login back-to-back? (Or even just a login command while currently
> logged
> >>> in?)
>
> >> [SAH] Let's talk about this. What's appropriate behavior? IF the server
> >> gets a
> >> "login" during an active session, it can either ignore the second
"login",
> >> or it
> >> can return an error. Similarly, it the server gets a "logout" when
there's
> >> no
> >> active session, it can either ignore the "logout" or return an error.
I'm
> >> inclined to return an error to explicitly note that the submitted
> >> query/command
> >> wasn't processed as requested.
>
> > [RW] First off, I will certainly defer to those with more implementation
in
> > this
> > realm. However, based on my experience as a user, I would expect a
> login
> > that
> > happens during an active session to "just work" and override the
> previous
> > active
> > session. This could happen when I have an active session at the server
> but
> > the
> > client browser (with the session) crashes or is otherwise inaccessible.
> > This
> > seems better than the alternative: If the new login request is refused,
> > then
> > the user is (essentially) locked out until the session timeout value
> > expires.
> > Related, if the server gets a "logout" when there is no active session,
I
> > think
> > that it should ignore the "logout" (rather than returning an error). The
> > thinking being that returning an error is at best useless and at worst
could
> > be
> > an information leak (aka security risk).
>
> The document currently describes a session/refresh path segment to
> perform the
> kind of "override" behavior described above. Having a "login followed by a
> login" do the same thing seems counter-intuitive. My own experience with
> server-side session management is that there is no lockout. If the client
> sends the right HTTP cookie, and the session is still active, there won't
be a
> problem. Another login should be possible if the "old" session gets
> corrupted.
>
> Let's look at the server-side options again for situations in which the
server
> receives a login followed by a login, or a logout where there's been no
> login,
> or a refresh without an active session, or a session status without an
active
> session:
>
> 1. Return an error. HTTP includes a 409 (Conflict) response that can be
> returned if a received request conflicts with the current state of the
server.
>
> 2. Accept the request and ignore it. I'm not sure what an appropriate HTTP
> response code would be for this situation.
>
> 3. Accept the request and do "something".
>
> Option 1 can be done consistently for all the above request sequences.
> Option
> 2 seems like it could mislead the client into thinking that something has
> happened unless there is, in fact, an appropriate HTTP response code
> available
> to describe a no-op (I couldn't find one). Option 3 might be doable if we
> can
> figure out what the "somethings" are, like processing a second login
> received
> while a session is active, but the other command sequences present
> problems.
> As you described above, a logout received without an active session is
> processed differently than the "login followed by a login" situation. Is
that
> really the best course of action? I think consistent behavior would be
> preferred.
>
> Scott
>
> _______________________________________________
> regext mailing list
> regext@ietf.org <mailto:regext@ietf.org> 
> https://secure-
> web.cisco.com/1zzMrKkgYlj9VhlxPYw6YLgXo4UAztsC_b_SIIxy0OJCV9U2y757
> cdfeXR-
> TsC4CBsm4x0Yza6BzHsVVgxL47gZOr0EEg3eYwSmzQahgfdLx6MCjcvGofpNEU
> HHZt2Y9yHuOqVA2iKKNDFe4kYtLZHy4rnHFrCuG4pBqHTT16_dC9eQWYrcA7F
> A4k25iCZW0YD3jfVPuhbDXOJoN5T2R71VL27lBZvgz67YLjIgfoeMRu8B5U9-
> yu2qyTAFnQ2bvd/https%3A%2F%2Fwww.ietf.org%2Fmailman%2Flistinfo%2
> Fregext
>


------=_NextPart_000_0043_01D896A5.15100010
Content-Type: text/html; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

<html xmlns:v=3D"urn:schemas-microsoft-com:vml" =
xmlns:o=3D"urn:schemas-microsoft-com:office:office" =
xmlns:w=3D"urn:schemas-microsoft-com:office:word" =
xmlns:m=3D"http://schemas.microsoft.com/office/2004/12/omml" =
xmlns=3D"http://www.w3.org/TR/REC-html40"><head><meta =
http-equiv=3DContent-Type content=3D"text/html; =
charset=3Dus-ascii"><meta name=3DGenerator content=3D"Microsoft Word 15 =
(filtered medium)"><style><!--
/* Font Definitions */
@font-face
	{font-family:"Cambria Math";
	panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
	{font-family:Calibri;
	panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
	{margin:0in;
	font-size:10.0pt;
	font-family:"Calibri",sans-serif;}
a:link, span.MsoHyperlink
	{mso-style-priority:99;
	color:blue;
	text-decoration:underline;}
span.EmailStyle22
	{mso-style-type:personal-reply;
	font-family:"Calibri",sans-serif;
	color:windowtext;}
.MsoChpDefault
	{mso-style-type:export-only;
	font-size:10.0pt;}
@page WordSection1
	{size:8.5in 11.0in;
	margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
	{page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext=3D"edit" spidmax=3D"1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext=3D"edit">
<o:idmap v:ext=3D"edit" data=3D"1" />
</o:shapelayout></xml><![endif]--></head><body lang=3DEN-US link=3Dblue =
vlink=3Dpurple style=3D'word-wrap:break-word'><div =
class=3DWordSection1><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt'>Notes below, Rick.<o:p></o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'font-size:11.0pt'><o:p>&nbsp;</o:p></span></p><div =
style=3D'border:none;border-left:solid blue 1.5pt;padding:0in 0in 0in =
4.0pt'><div><div style=3D'border:none;border-top:solid #E1E1E1 =
1.0pt;padding:3.0pt 0in 0in 0in'><p class=3DMsoNormal><b><span =
style=3D'font-size:11.0pt'>From:</span></b><span =
style=3D'font-size:11.0pt'> Rick Wilhelm &lt;Rwilhelm@PIR.org&gt; =
<br><b>Sent:</b> Tuesday, July 12, 2022 4:05 PM<br><b>To:</b> =
Hollenbeck, Scott &lt;shollenbeck@verisign.com&gt;; =
jgould=3D40verisign.com@dmarc.ietf.org; =
regext@ietf.org<br><b>Subject:</b> [EXTERNAL] Re: [regext] Login/Logout =
Processing (was RE: I-D Action: =
draft-ietf-regext-rdap-openid-15.txt)<o:p></o:p></span></p></div></div><p=
 class=3DMsoNormal><o:p>&nbsp;</o:p></p><table class=3DMsoNormalTable =
border=3D0 cellpadding=3D0 width=3D1185 =
style=3D'width:888.75pt;background:#F5ECCE'><tr><td width=3D1175 =
style=3D'width:881.25pt;padding:.75pt .75pt .75pt =
.75pt'><p><strong><span =
style=3D'font-family:"Calibri",sans-serif;color:#993300'>Caution:</span><=
/strong><span style=3D'color:#993300'>&nbsp;</span><span =
style=3D'color:black'>This email originated from outside the =
organization. Do not click links or open attachments unless you =
recognize the sender and know the content is =
safe.&nbsp;</span><o:p></o:p></p></td></tr></table><p =
class=3DMsoNormal><span =
style=3D'font-size:11.0pt;color:white'>Briefly,</span><span =
style=3D'font-size:11.0pt'><o:p></o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'font-size:11.0pt'><o:p>&nbsp;</o:p></span></p><p =
class=3DMsoNormal><span style=3D'font-size:11.0pt'>I think that (per a =
point that Mario made) the situations described below are different and =
might merit consideration differently. Specifically, these =
situations:<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt'><o:p>&nbsp;</o:p></span></p><p =
class=3DMsoNormal><span style=3D'font-size:11.0pt'>&gt; Let's look at =
the server-side options again for situations in which the server<br>&gt; =
receives a login followed by a login, or a logout where there's been =
no<br>&gt; login,<br>&gt; or a refresh without an active session, or a =
session status without an active<br>&gt; =
session:<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt'><o:p>&nbsp;</o:p></span></p><p =
class=3DMsoNormal><span style=3D'font-size:11.0pt'>- Login followed by =
login: &nbsp;sounds similar to a point that Mario made related to =
extending a session; seems fine, not an error<o:p></o:p></span></p><p =
class=3DMsoNormal><b><i><span style=3D'font-size:11.0pt'>[SAH] Under =
certain circumstances, I now agree. A client might be serving multiple =
end-users, and the server should be able to start another session for a =
different user if it receives a second login request without a cookie. =
If the server receives a login request with a valid cookie, though (the =
server is seeing a second login request on an active session), I&#8217;d =
prefer to keep command processing idempotent such that the second login =
isn&#8217;t processed differently than the original login was, and =
return an error since the request conflicts with the current state of =
the server. That&#8217;ll make client processing =
consistent.</span></i></b><span =
style=3D'font-size:11.0pt'><o:p></o:p></span></p><p =
class=3DMsoNormal><span style=3D'font-size:11.0pt'>- logout where there =
has been no login:&nbsp; while it might be tempting to want to give back =
an error, I would argue that this gives up security info about the =
client.&nbsp; Therefore, is there harm in just saying &#8220;ok&#8221; =
??<o:p></o:p></span></p><p class=3DMsoNormal><b><i><span =
style=3D'font-size:11.0pt'>[SAH] Please elaborate regarding =
&#8220;security info&#8221;. I&#8217;m inclined to return an error =
because, again, the request conflicts with the current state of the =
server. The client won&#8217;t be misled into thinking that it ended a =
session when there was no session to begin with.</span></i></b><span =
style=3D'font-size:11.0pt'><o:p></o:p></span></p><p =
class=3DMsoNormal><span style=3D'font-size:11.0pt'>- refresh without an =
active session:&nbsp; should give back error<o:p></o:p></span></p><p =
class=3DMsoNormal><span style=3D'font-size:11.0pt'>- session status =
without an active session:&nbsp; should give back =
error<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt'><o:p>&nbsp;</o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'font-size:11.0pt'>Thanks<o:p></o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'font-size:11.0pt'>Rick<o:p></o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'font-size:11.0pt'><o:p>&nbsp;</o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'font-size:11.0pt'><o:p>&nbsp;</o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'font-size:11.0pt'><o:p>&nbsp;</o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'font-size:11.0pt'><o:p>&nbsp;</o:p></span></p><div =
style=3D'border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in =
0in 0in'><p class=3DMsoNormal style=3D'margin-bottom:12.0pt'><b><span =
style=3D'font-size:12.0pt;color:black'>From: </span></b><span =
style=3D'font-size:12.0pt;color:black'>Hollenbeck, Scott &lt;<a =
href=3D"mailto:shollenbeck@verisign.com">shollenbeck@verisign.com</a>&gt;=
<br><b>Date: </b>Tuesday, July 12, 2022 at 9:17 AM<br><b>To: </b><a =
href=3D"mailto:jgould=3D40verisign.com@dmarc.ietf.org">jgould=3D40verisig=
n.com@dmarc.ietf.org</a> &lt;<a =
href=3D"mailto:jgould=3D40verisign.com@dmarc.ietf.org">jgould=3D40verisig=
n.com@dmarc.ietf.org</a>&gt;, Rick Wilhelm &lt;<a =
href=3D"mailto:Rwilhelm@PIR.org">Rwilhelm@PIR.org</a>&gt;, <a =
href=3D"mailto:regext@ietf.org">regext@ietf.org</a> &lt;<a =
href=3D"mailto:regext@ietf.org">regext@ietf.org</a>&gt;<br><b>Subject: =
</b>[EXTERNAL] RE: [regext] Login/Logout Processing (was RE: I-D Action: =
draft-ietf-regext-rdap-openid-15.txt)<o:p></o:p></span></p></div><p =
class=3DMsoNormal style=3D'margin-bottom:12.0pt'><span =
style=3D'font-size:11.0pt'>CAUTION: This email came from outside your =
organization. Don&#8217;t trust emails, links, or attachments from =
senders that seem suspicious or you are not expecting.<br><br>Thanks, =
Jim. I'm working on -16 to address this topic and other recent feedback. =
I'm planning to include text that describes error return =
conditions.<br><br>Scott<br><br>&gt; -----Original Message-----<br>&gt; =
From: Gould, James &lt;<a =
href=3D"mailto:jgould=3D40verisign.com@dmarc.ietf.org">jgould=3D40verisig=
n.com@dmarc.ietf.org</a>&gt;<br>&gt; Sent: Tuesday, July 12, 2022 9:13 =
AM<br>&gt; To: Hollenbeck, Scott &lt;<a =
href=3D"mailto:shollenbeck@verisign.com">shollenbeck@verisign.com</a>&gt;=
; <a href=3D"mailto:Rwilhelm@PIR.org">Rwilhelm@PIR.org</a>;<br>&gt; <a =
href=3D"mailto:regext@ietf.org">regext@ietf.org</a><br>&gt; Subject: =
[EXTERNAL] Re: [regext] Login/Logout Processing (was RE: I-D<br>&gt; =
Action: draft-ietf-regext-rdap-openid-15.txt)<br>&gt;<br>&gt; Caution: =
This email originated from outside the organization. Do not click =
links<br>&gt; or open attachments unless you recognize the sender and =
know the content<br>&gt; is safe.<br>&gt;<br>&gt; Scott,<br>&gt;<br>&gt; =
My preference is option 1, where if the request conflicts with the =
current<br>&gt; state it needs to result in an error.<br>&gt;<br>&gt; =
--<br>&gt;<br>&gt; JG<br>&gt;<br>&gt;<br>&gt;<br>&gt; James =
Gould<br>&gt; Fellow Engineer<br>&gt; <a =
href=3D"mailto:jgould@Verisign.com">jgould@Verisign.com</a> =
&lt;applewebdata://13890C55-AAE8-4BF3-A6CE-<br>&gt; <a =
href=3D"mailto:B4BA42740803/jgould@Verisign.com">B4BA42740803/jgould@Veri=
sign.com</a>&gt;<br>&gt;<br>&gt; 703-948-3271<br>&gt; 12061 Bluemont =
Way<br>&gt; Reston, VA 20190<br>&gt;<br>&gt; Verisign.com &lt;<a =
href=3D"https://secure-web.cisco.com/14tl_My5ZME5EWUyAX5a7wWHLqYU5eMXkGAJ=
G3kWsISx8PHh1liKD7ofsNq9qr59NAKu3-xshnpp-LDNozsB7tWkGqsyc1BsK6ABNp9qgUH8I=
2SKGdYCy4WUhmiLVSGvuVH8QqMlnFkMAvd-xHlUM0GOyUB2fcp4OoDQs0SfGknwIrwlYg0Ef0=
EI96IzjnOCgXJnfvFxNLmUeg1p5f6WVyudP1hcjvqNSA_wIWYcGcZkqxj56CR5-E_Ntq2aS_1=
Q0/https%3A%2F%2Fprotect-us.mimecast.com%2Fs%2FKdwUCOYzm8CAvABCvFYvF%3Fdo=
main%3Dsecure-web.cisco.com">http://secure-web.cisco.com/146IYbLb06o7EQ5y=
-</a><br>&gt; =
S9CI7Wv51aAaxl8hFAuOBaHou3sDkfQPFMQu6BUoW4k5ofYC5YtOj6XXRCKD<br>&gt; =
HYzan_NZGxdaN0YSvV0pwQb7R9i9kzQj1h9R05Pagm54-<br>&gt; =
27p6uMqOMzoZGv2vinpZe2J8m4PKqdSLdJjiCepHPZ1JM1mtuI50NVmuZ8vRF<br>&gt; =
i_0YBy7IEEjGceS0HpXLfup5UC4X63esKGLab9WHmN-<br>&gt; =
OZdrNHmUQpEtHd1kkwxdbMiJ2nTpenX/http%3A%2F%2Fverisigninc.com%2<br>&gt; =
F&gt;<br>&gt;<br>&gt; On 7/7/22, 11:02 AM, &quot;regext on behalf of =
Hollenbeck, Scott&quot; &lt;regext-<br>&gt; <a =
href=3D"mailto:bounces@ietf.org">bounces@ietf.org</a> on behalf of <a =
href=3D"mailto:shollenbeck=3D40verisign.com@dmarc.ietf.org">shollenbeck=3D=
40verisign.com@dmarc.ietf.org</a>&gt;<br>&gt; =
wrote:<br>&gt;<br>&gt;<br>&gt; Thanks, Rick. Trimming things up a bit =
and changing the subject<br>&gt; appropriately...<br>&gt;<br>&gt; =
&gt;&gt;&gt; In the last sentence: Is the client required to wait until =
the access<br>&gt; &gt;&gt;&gt; token has<br>&gt; &gt;&gt;&gt; expired =
before submitting the new login request? Or can it send<br>&gt; =
logout<br>&gt; &gt;&gt;&gt; and<br>&gt; &gt;&gt;&gt; login back-to-back? =
(Or even just a login command while currently<br>&gt; logged<br>&gt; =
&gt;&gt;&gt; in?)<br>&gt;<br>&gt; &gt;&gt; [SAH] Let's talk about this. =
What's appropriate behavior? IF the server<br>&gt; &gt;&gt; gets =
a<br>&gt; &gt;&gt; &quot;login&quot; during an active session, it can =
either ignore the second &quot;login&quot;,<br>&gt; &gt;&gt; or =
it<br>&gt; &gt;&gt; can return an error. Similarly, it the server gets a =
&quot;logout&quot; when there's<br>&gt; &gt;&gt; no<br>&gt; &gt;&gt; =
active session, it can either ignore the &quot;logout&quot; or return an =
error. I'm<br>&gt; &gt;&gt; inclined to return an error to explicitly =
note that the submitted<br>&gt; &gt;&gt; query/command<br>&gt; &gt;&gt; =
wasn't processed as requested.<br>&gt;<br>&gt; &gt; [RW] First off, I =
will certainly defer to those with more implementation in<br>&gt; &gt; =
this<br>&gt; &gt; realm. However, based on my experience as a user, I =
would expect a<br>&gt; login<br>&gt; &gt; that<br>&gt; &gt; happens =
during an active session to &quot;just work&quot; and override =
the<br>&gt; previous<br>&gt; &gt; active<br>&gt; &gt; session. This =
could happen when I have an active session at the server<br>&gt; =
but<br>&gt; &gt; the<br>&gt; &gt; client browser (with the session) =
crashes or is otherwise inaccessible.<br>&gt; &gt; This<br>&gt; &gt; =
seems better than the alternative: If the new login request is =
refused,<br>&gt; &gt; then<br>&gt; &gt; the user is (essentially) locked =
out until the session timeout value<br>&gt; &gt; expires.<br>&gt; &gt; =
Related, if the server gets a &quot;logout&quot; when there is no active =
session, I<br>&gt; &gt; think<br>&gt; &gt; that it should ignore the =
&quot;logout&quot; (rather than returning an error). The<br>&gt; &gt; =
thinking being that returning an error is at best useless and at worst =
could<br>&gt; &gt; be<br>&gt; &gt; an information leak (aka security =
risk).<br>&gt;<br>&gt; The document currently describes a =
session/refresh path segment to<br>&gt; perform the<br>&gt; kind of =
&quot;override&quot; behavior described above. Having a &quot;login =
followed by a<br>&gt; login&quot; do the same thing seems =
counter-intuitive. My own experience with<br>&gt; server-side session =
management is that there is no lockout. If the client<br>&gt; sends the =
right HTTP cookie, and the session is still active, there won't be =
a<br>&gt; problem. Another login should be possible if the =
&quot;old&quot; session gets<br>&gt; corrupted.<br>&gt;<br>&gt; Let's =
look at the server-side options again for situations in which the =
server<br>&gt; receives a login followed by a login, or a logout where =
there's been no<br>&gt; login,<br>&gt; or a refresh without an active =
session, or a session status without an active<br>&gt; =
session:<br>&gt;<br>&gt; 1. Return an error. HTTP includes a 409 =
(Conflict) response that can be<br>&gt; returned if a received request =
conflicts with the current state of the server.<br>&gt;<br>&gt; 2. =
Accept the request and ignore it. I'm not sure what an appropriate =
HTTP<br>&gt; response code would be for this situation.<br>&gt;<br>&gt; =
3. Accept the request and do &quot;something&quot;.<br>&gt;<br>&gt; =
Option 1 can be done consistently for all the above request =
sequences.<br>&gt; Option<br>&gt; 2 seems like it could mislead the =
client into thinking that something has<br>&gt; happened unless there =
is, in fact, an appropriate HTTP response code<br>&gt; available<br>&gt; =
to describe a no-op (I couldn't find one). Option 3 might be doable if =
we<br>&gt; can<br>&gt; figure out what the &quot;somethings&quot; are, =
like processing a second login<br>&gt; received<br>&gt; while a session =
is active, but the other command sequences present<br>&gt; =
problems.<br>&gt; As you described above, a logout received without an =
active session is<br>&gt; processed differently than the &quot;login =
followed by a login&quot; situation. Is that<br>&gt; really the best =
course of action? I think consistent behavior would be<br>&gt; =
preferred.<br>&gt;<br>&gt; Scott<br>&gt;<br>&gt; =
_______________________________________________<br>&gt; regext mailing =
list<br>&gt; <a =
href=3D"mailto:regext@ietf.org">regext@ietf.org</a><br>&gt; <a =
href=3D"https://secure-">https://secure-</a><br>&gt; =
web.cisco.com/1zzMrKkgYlj9VhlxPYw6YLgXo4UAztsC_b_SIIxy0OJCV9U2y757<br>&gt=
; cdfeXR-<br>&gt; =
TsC4CBsm4x0Yza6BzHsVVgxL47gZOr0EEg3eYwSmzQahgfdLx6MCjcvGofpNEU<br>&gt; =
HHZt2Y9yHuOqVA2iKKNDFe4kYtLZHy4rnHFrCuG4pBqHTT16_dC9eQWYrcA7F<br>&gt; =
A4k25iCZW0YD3jfVPuhbDXOJoN5T2R71VL27lBZvgz67YLjIgfoeMRu8B5U9-<br>&gt; =
yu2qyTAFnQ2bvd/https%3A%2F%2Fwww.ietf.org%2Fmailman%2Flistinfo%2<br>&gt; =
Fregext<br>&gt;<o:p></o:p></span></p></div></div></body></html>

------=_NextPart_000_0043_01D896A5.15100010--

