6.5 Nhss_gbaUEAuthentication Service API

29.5623GPP5G SystemHome Subscriber Server (HSS) servicesRelease 18Stage 3TS

6.5.1 API URI

URIs of this API shall have the following root:

{apiRoot}/{apiName}/{apiVersion}

where "apiRoot" is defined in clause 4.4.1 of 3GPP TS 29.501 [5], the "apiName" shall be set to "nhss-gba-ueau" and the "apiVersion" shall be set to "v1" for the current version of this specification.

6.5.2 Usage of HTTP

6.5.2.1 General

HTTP/2, as defined in IETF RFC 7540 [8], shall be used as specified in clause 5 of 3GPP TS 29.500 [4].

HTTP/2 shall be transported as specified in clause 5.3 of 3GPP TS 29.500 [4].

HTTP messages and bodies for the Nhss_gbaUEAuthentication service shall comply with the OpenAPI [9] specification contained in Annex A.6.

6.5.2.2 HTTP standard headers

6.5.2.2.1 General

The usage of HTTP standard headers shall be supported as specified in clause 5.2.2 of 3GPP TS 29.500 [4].

6.5.2.2.2 Content type

The following content types shall be supported:

– JSON, as defined in IETF RFC 8259 [10], signalled by the content type "application/json".

– The Problem Details JSON Object (IETF RFC 7807 [11] signalled by the content type "application/problem+json"

6.5.2.3 HTTP custom headers

6.5.2.3.1 General

The usage of HTTP custom headers shall be supported as specified in clause 5.2.3 of 3GPP TS 29.500 [4].

6.5.3 Resources

6.5.3.1 Overview

Figure 6.5.3.1-1: Resource URI structure of the Nhss_gbaUEAU API

Table 6.5.3.1-1 provides an overview of the resources and applicable HTTP methods.

Table 6.5.3.1-1: Resources and methods overview

Resource name
(Archetype)

Resource URI

HTTP method or custom operation

Description

SecurityInformation
(Custom operation)

/{ueId}/security-information/generate-auth-data

generate-auth-data (POST)

6.5.3.2 Resource: SecurityInformation (Custom Operation)

6.5.3.2.1 Description

This resource represents the information that is needed to calculate a fresh authentication vector for GBA.

6.5.3.2.2 Resource Definition

Resource URI: {apiRoot}/nhss-gba-ueau/v1/{ueId}/security-information

This resource shall support the resource URI variables defined in table 6.5.3.2.2-1.

Table 6.5.3.2.2-1: Resource URI variables for this resource

Name

Definition

apiRoot

See clause 6.5.1

ueId

Represents the UE Identity. It can be an MSISDN, an IMSI an IMPI or an IMPU.

6.5.3.2.3 Resource Standard Methods

No Standard Methods are supported for this resource.

6.5.3.2.3 Resource Custom Operations

6.5.3.2.4.1 Overview

Table 6.5.3.2.4.1-1: Custom operations

Operation Name

Custom operation URI

Mapped HTTP method

Description

generate-auth-data

/generate-auth-data

POST

6.5.3.2.4.2 Operation: generate-auth-data

6.5.3.2.4.2.1 Description

This custom operation is used by the NF service consumer (BSF) to request authentication information data for the UE from the HSS.

6.5.3.2.4.2.2 Operation Definition

This operation shall support the request data structures specified in table 6.5.3.2.4.2.2-1 and the response data structure and response codes specified in table 6.5.3.2.4.2.2-2.

Table 6.5.3.2.4.2.2-1: Data structures supported by the POST Request Body on this resource

Data type

P

Cardinality

Description

AuthenticationInfoRequest

M

1

Table 6.5.3.2.3.1-3: Data structures supported by the GET Response Body on this resource

Data type

P

Cardinality

Response

codes

Description

AuthenticationInfoResult

M

1

200 OK

RedirectResponse

O

0..1

307 Temporary Redirect

Temporary redirection. The response shall include a Location header field containing a different URI. The URI shall be an alternative URI of the resource located on an alternative service instance within the same HSS (service) set.

RedirectResponse

O

0..1

308 Permanent Redirect

Permanent redirection. The response shall include a Location header field containing a different URI. The URI shall be an alternative URI of the resource located on an alternative service instance within the same HSS (service) set.

ProblemDetails

O

0..1

403 Forbidden

The "cause" attribute may be used to indicate one of the following application errors:

– OPERATION_NOT_ALLOWED

ProblemDetails

O

0..1

404 Not Found

The "cause" attribute may be used to indicate the following application error:

– USER_NOT_FOUND

Table 6.5.3.2.3.1-4: Headers supported by the 307 Response Code on this resource

Name

Data type

P

Cardinality

Description

Location

string

M

1

An alternative URI of the resource located on an alternative service instance within the same HSS (service) set.

3gpp-Sbi-Target-Nf-Id

string

O

0..1

Identifier of the target NF (service) instance ID towards which the request is redirected.

Table 6.5.3.2.3.1-5: Headers supported by the 308 Response Code on this resource

Name

Data type

P

Cardinality

Description

Location

string

M

1

An alternative URI of the resource located on an alternative service instance within the same HSS (service) set.

3gpp-Sbi-Target-Nf-Id

string

O

0..1

Identifier of the target NF (service) instance ID towards which the request is redirected.

6.5.5 Notifications

In this release of this specification, no notifications are defined for the Nhss_gbaUEAuthentication Service.

6.5.6 Data Model

6.5.6.1 General

This clause specifies the application data model supported by the API.

Table 6.5.6.1-1 specifies the structured data types defined for the Nhss_gbaUEAU service API.

Table 6.5.6.1-1: Nhss_gbaUEAU specific Data Types

Data type

Clause defined

Description

AuthenticationInfoRequest

6.5.6.2.2

AuthenticationInfoResult

6.5.6.2.3

DigestAuthentication

6.5.6.2.6

Impi

6.5.6.3.2

AuthenticationScheme

6.5.6.3.3

DigestAlgorithm

6.5.6.3.4

DigestQop

6.5.6.3.5

Table 6.5.6.1-2 specifies data types re-used by the Nhss_gbaUEAU service API from other specifications, including a reference to their respective specifications and when needed, a short description of their use within the Nhss_gbaUEAU.

Table 6.5.6.1-2: Nhss_gbaUEAU re-used Data Types

Data type

Reference

Comments

Autn

3GPP TS 29.503 [15]

Auts

3GPP TS 29.503 [15]

Rand

3GPP TS 29.503 [15]

Xres

3GPP TS 29.503 [15]

ProblemDetails

3GPP TS 29.571 [16]

Response body of error response messages.

RedirectResponse

3GPP TS 29.571 [16]

Response body of redirect response messages.

SupportedFeatures

3GPP TS 29.571 [16]

ResynchronizationInfo

3GPP TS 29.562

Clause 6.3.6.2.4

3GAkaAv

3GPP TS 29.562

Clause 6.3.6.2.5

UeId

3GPP TS 29.562

Clause 6.4.6.3.2

6.5.6.2 Structured data types

6.5.6.2.1 Introduction

This clause defines the structures to be used in resource representations.

6.5.6.2.2 Type: AuthenticationInfoRequest

Table 6.5.6.2.2-1: Definition of type AuthenticationInfoRequest

Attribute name

Data type

P

Cardinality

Description

authenticationScheme

AuthenticationScheme

M

1

resynchronizationInfo

ResynchronizationInfo

O

0..1

supportedFeatures

SupportedFeatures

O

0..1

6.5.6.2.3 Type: AuthenticationInfoResult

Table 6.5.6.2.3-1: Definition of type AuthenticationInfoResult

Attribute name

Data type

P

Cardinality

Description

impi

Impi

O

0..1

3gAkaAv

3gAkaAv

O

0..1

digestAuth

DigestAuthentication

O

0..1

supportedFeatures

SupportedFeatures

O

0..1

6.5.6.2.4 Void
6.5.6.2.5 Void
6.5.6.2.6 Type: DigestAuthentication

Table 6.5.6.2.6-1: Definition of type DigestAuthentication

Attribute name

Data type

P

Cardinality

Description

digestRealm

string

M

1

digestAlgorithm

DigestAlgorithm

M

1

digestQop

DigestQop

M

1

ha1

string

M

1

6.5.6.3 Simple data types and enumerations

6.5.6.3.1 Introduction

This clause defines simple data types and enumerations that can be referenced from data structures defined in the previous clauses.

6.5.6.3.2 Simple data types

The simple data types defined in table 6.5.6.3.2-1 shall be supported.

Table 6.5.6.3.2-1: Simple data types

Type Name

Type Definition

Description

Impi

string

IMS Private User Identity

Ck

string

pattern: "^[A-Fa-f0-9]{32}$"

Ik

string

pattern: "^[A-Fa-f0-9]{32}$"

6.5.6.3.3 Enumeration: AuthenticationScheme

The enumeration AuthenticationScheme represents the authentication scheme used in GBA. It shall comply with the provisions defined in table 6.5.6.3.3-1.

Table 6.5.6.3.3-1: Enumeration AuthenticationScheme

Enumeration value

Description

"DIGEST_AKAV1_MD5"

IMS-AKA authentication scheme

"DIGEST_HTTP"

Digest authentication scheme

6.5.6.3.4 Enumeration: DigestAlgorithm

The enumeration DigestAlgorithm represents the algorithm for the Digest scheme. It shall comply with the provisions defined in table 6.5.6.3.4-1.

Table 6.5.6.3.4-1: Enumeration DigestAlgorithm

Enumeration value

Description

"MD5"

MD5 digest algorithm

"MD5_SESS"

Session variant of the MD5 digest algorithm

6.5.6.3.5 Enumeration: DigestQop

The enumeration DigestQop represents the quality of protection for the Digest scheme. It shall comply with the provisions defined in table 6.5.6.3.5-1.

Table 6.5.6.3.5-1: Enumeration DigestQop

Enumeration value

Description

"AUTH"

Indicates authentication

"AUTH_INT"

Indicates authentication with integrity protection

6.5.7 Error Handling

6.5.7.1 General

HTTP error handling shall be supported as specified in clause 5.2.4 of 3GPP TS 29.500 [4].

6.5.7.2 Protocol Errors

Protocol errors handling shall be supported as specified in clause 5.2.7 of 3GPP TS 29.500 [4].

6.5.7.3 Application Errors

The common application errors defined in the Table 5.2.7.2-1 in 3GPP TS 29.500 [4] may also be used for the Nhss_gbaUEAU service. The following application errors listed in Table 6.5.7.3-1 are specific for the Nhss_gbaUEAU service.

Table 6.5.7.3-1: Application errors

Application Error

HTTP status code

Description

OPERATION_NOT_ALLOWED

403 Forbidden

The NF Service Consumer is not authorized to invoke the requested service operation.

USER_NOT_FOUND

404 Not Found

The user does not exist in the HPLMN.

6.5.8 Feature Negotiation

The optional features in table 6.5.8-1 are defined for the Nhss_gbaUEAU API. They shall be negotiated using the extensibility mechanism defined in clause 6.6 of 3GPP TS 29.500 [4].

Table 6.5.8-1: Supported Features

Feature number

Feature Name

Description

6.5.9 Security

As indicated in 3GPP TS 33.501 [5], the access to the Nhss_gbaUEAU API may be authorized by means of the OAuth2 protocol (see IETF RFC 6749 [35]), using the "Client Credentials" authorization grant, where the NRF (see 3GPP TS 29.510 [36]) plays the role of the authorization server.

If Oauth2 authorization is used, an NF Service Consumer, prior to consuming services offered by the Nhss_gbaUEAU API, shall obtain a "token" from the authorization server, by invoking the Access Token Request service, as described in 3GPP TS 29.510 [36], clause 5.4.2.2.

NOTE: When multiple NRFs are deployed in a network, the NRF used as authorization server is the same NRF that the NF Service Consumer used for discovering the Nhss_gbaUEAU service.

The Nhss_gbaUEAU API defines the following scopes for OAuth2 authorization:

Table 6.5.9-1: Oauth2 scopes defined in Nhss_gbaUEAU API

Scope

Description

"nhss-gba-ueau"

Access to the Nhss_gbaUEAU API

"nhss-gba-ueau:generate-auth-data:invoke"

Access to invoke the Generate Auth Data operation

Annex A (normative):
OpenAPI specification