JiscMail Logo
Email discussion lists for the UK Education and Research communities

Help for MOONSHOT-DEV Archives


MOONSHOT-DEV Archives

MOONSHOT-DEV Archives


MOONSHOT-DEV@JISCMAIL.AC.UK


View:

Message:

[

First

|

Previous

|

Next

|

Last

]

By Topic:

[

First

|

Previous

|

Next

|

Last

]

By Author:

[

First

|

Previous

|

Next

|

Last

]

Font:

Proportional Font

LISTSERV Archives

LISTSERV Archives

MOONSHOT-DEV Home

MOONSHOT-DEV Home

MOONSHOT-DEV  February 2015

MOONSHOT-DEV February 2015

Options

Subscribe or Unsubscribe

Subscribe or Unsubscribe

Log In

Log In

Get Password

Get Password

Subject:

Handling RADIUS Errors: A Proposal

From:

Sam Hartman <[log in to unmask]>

Date:

Tue, 10 Feb 2015 15:35:11 -0500

Content-Type:

text/plain

Parts/Attachments:

Parts/Attachments

text/plain (61 lines)

We're working on improving Moonshot's error handling and debugability.
Today, all you typically get at the client is authentication rejected,
and at the server is access reject.

We've had some discussion on-list in the last week of the errors we'd
like to distinguish.

I'd like to discuss our mechanisms for doing that.

On the server, we return an error using gss_display_status.  A few years
ago Kerberos introduced the convention that the message you get back
from gss_display_status can be dynamic.  You pass in a major and minor
code, but the resulting message, especially for minor codes is not
constant.  It may depend on the circumstances of the most recent error.
There are facilities in mech_eap for manipulating this.

We already do a reasonably good job of mapping libradsec errors into
moonshot errors and recovering the libradsec error message.

So, on the server, we can return a fairly dynamic error message.

I'm proposing that we first look to see if an access-reject has an
error-cause attribute.  That was defined in the COA spec, but based on
some of the registered values, its usage seems to be more common.

The main value from Error-Cause I want to retrieve are values related to
proxy failures, particularly including the proxy routing failure code.  

If Error-cause is not present, or perhaps possibly even if it is, we
look for reply-message.  If there's EAP, that won't be present, but if
things have failed so hard that the EAP was not processed, we can get a
reply-message.

Between the client and acceptor we have a more limited interface.  The
ABFAB error token contains a major status and a minor status as an
unsigned 32-bit integer limited to the values 0-255 (see section 5.3 and
7.6 of RFC 7055)

We will not be able to communicate out reply-message, but we will be
able to parse out error cause codes and turn these into meaningful
GSS-EAP errors.

Then, we propose to write and send patches to FreeRADIUS to update the
trust router code and ABFAB policy.  We propose to populate reply
message with trust router errors where appropriate and to generate
error-cause from the more interesting trust router errors.  In
particular we'll generate a proxy routing error when we fail to find a
trust path.

We also want to generate an error-cause when the IDP rejects for
authorization reasons.

Thoughts on this approach?
Alan, is error-cause the right thing to be using here?
Typically the TR code returns noop or notfound rather than reject
directly when a mapping isn't found.  Should we define another internal
attribute and populate error-cause when we turn that into a reject in
unlang, or should we populate error-cause from the TR code directly?

--Sam

Top of Message | Previous Page | Permalink

JiscMail Tools


RSS Feeds and Sharing


Advanced Options


Archives

March 2022
December 2021
October 2021
September 2021
August 2021
June 2021
April 2021
February 2021
January 2021
December 2020
November 2020
October 2020
August 2020
July 2020
June 2020
May 2020
April 2020
March 2020
February 2020
January 2020
December 2019
November 2019
October 2019
September 2019
July 2019
June 2019
May 2019
April 2019
March 2019
February 2019
January 2019
December 2018
November 2018
April 2018
February 2018
January 2018
December 2017
November 2017
September 2017
August 2017
July 2017
June 2017
May 2017
April 2017
February 2017
January 2017
December 2016
October 2016
September 2016
August 2016
June 2016
April 2016
March 2016
February 2016
January 2016
December 2015
November 2015
October 2015
August 2015
July 2015
May 2015
April 2015
March 2015
February 2015
January 2015
December 2014
November 2014
October 2014
September 2014
August 2014
July 2014
June 2014
May 2014
April 2014
March 2014
February 2014
January 2014
December 2013
November 2013
October 2013
September 2013
August 2013
July 2013


JiscMail is a Jisc service.

View our service policies at https://www.jiscmail.ac.uk/policyandsecurity/ and Jisc's privacy policy at https://www.jisc.ac.uk/website/privacy-notice

For help and support help@jisc.ac.uk

Secured by F-Secure Anti-Virus CataList Email List Search Powered by the LISTSERV Email List Manager