A.2 Nnef_Authentication API

29.2563GPPAerial Management ServicesRelease 17Stage 3TSUncrewed Aerial Systems Network Function (UAS-NF)

openapi: 3.0.0

info:

title: Nnef_Authentication

version: ‘1.0.2’

description: |

NEF Auth Service.

© 2022, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC).

All rights reserved.

externalDocs:

description: >

3GPP TS 29.256 V17.3.0; 5G System;Uncrewed Aerial Systems Network Function (UAS-NF);

Aerial Management Services; Stage 3

url: https://www.3gpp.org/ftp/Specs/archive/29_series/29.256/

servers:

– url: ‘{apiRoot}/nnef-authentication/v1’

variables:

apiRoot:

default: https://example.com

description: apiRoot as defined in clause 4.4 of 3GPP TS 29.501

security:

– {}

– oAuth2ClientCredentials:

– nnef-authentication

paths:

/uav-authentications:

post:

summary: UAV authentication

tags:

– UAV authentication

requestBody:

description: UAV authentication

required: true

content:

application/json:

schema:

$ref: ‘#/components/schemas/UAVAuthInfo’

responses:

‘200’:

description: UAV Auth response or message exchange

content:

application/json:

schema:

$ref: ‘#/components/schemas/UAVAuthResponse’

‘307’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/307’

‘308’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/308’

‘400’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/400’

‘403’:

description: UAV authentication failure

content:

application/json:

schema:

$ref: ‘#/components/schemas/UAVAuthFailure’

‘504’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/504’

default:

$ref: ‘TS29571_CommonData.yaml#/components/responses/default’

callbacks:

authNotification:

‘{request.body#/authNotification }’:

post:

requestBody:

required: true

content:

application/json:

schema:

$ref: ‘#/components/schemas/AuthNotification’

responses:

‘204’:

description: Successful Notification response

‘307’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/307’

‘308’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/308’

‘400’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/400’

default:

$ref: ‘TS29571_CommonData.yaml#/components/responses/default’

components:

securitySchemes:

oAuth2ClientCredentials:

type: oauth2

flows:

clientCredentials:

tokenUrl: ‘{nrfApiRoot}/oauth2/token’

scopes:

nnef-authentication: Access to the Nnef_authentication API

schemas:

#

# STRUCTURED DATA TYPES

#

UAVAuthInfo:

description: UAV auth data

type: object

required:

– gpsi

– serviceLevelId

– nfType

properties:

gpsi:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/Gpsi’

serviceLevelId:

type: string

authNotificationURI:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/Uri’

ipAddr:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/IpAddr’

pei:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/Pei’

authServerAddress:

type: string

authMsg:

allOf:

– $ref: ‘TS29571_CommonData.yaml#/components/schemas/RefToBinaryData’

deprecated: true

authContainer:

type: array

items:

$ref: ‘#/components/schemas/AuthContainer’

minItems: 1

ueLocInfo:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/UserLocation’

dnn:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/Dnn’

sNssai:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/ExtSnssai’

nfType:

$ref: ‘TS29510_Nnrf_NFManagement.yaml#/components/schemas/NFType’

UAVAuthResponse:

description: UAV auth response data

type: object

required:

– gpsi

properties:

gpsi:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/Gpsi’

serviceLevelId:

type: string

authMsg:

allOf:

– $ref: ‘TS29571_CommonData.yaml#/components/schemas/RefToBinaryData’

deprecated: true

authContainer:

type: array

items:

$ref: ‘#/components/schemas/AuthContainer’

minItems: 1

authResult:

allOf:

– $ref: ‘#/components/schemas/AuthResult’

deprecated: true

notifyCorrId:

type: string

AuthNotification:

description: UAV related notification

type: object

required:

– gpsi

– serviceLevelId

– notifType

– notifyCorrId

properties:

gpsi:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/Gpsi’

serviceLevelId:

type: string

notifyCorrId:

type: string

authMsg:

allOf:

– $ref: ‘TS29571_CommonData.yaml#/components/schemas/RefToBinaryData’

deprecated: true

authContainer:

type: array

items:

$ref: ‘#/components/schemas/AuthContainer’

minItems: 1

notifType:

$ref: ‘#/components/schemas/NotifType’

UAVAuthFailure:

description: UAV auth failure

type: object

required:

– error

properties:

error:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/ProblemDetails’

uasResourceRelease:

type: boolean

default: false

AuthContainer:

description: Authentication/Authorization data

type: object

properties:

authMsgType:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/Bytes’

authMsgPayload:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/RefToBinaryData’

authResult:

$ref: ‘#/components/schemas/AuthResult’

#

# SIMPLE DATA TYPES

#

#

# ENUMERATIONS

#

AuthResult:

description: Enumeration representing the result of authentication and/or authorization.

anyOf:

– type: string

enum:

– AUTH_SUCCESS

– AUTH_FAIL

– type: string

NotifType:

description: Enumeration representing the type of notification.

anyOf:

– type: string

enum:

– REAUTH

– UPDATEAUTH

– REVOKE

– type: string

Annex B (informative):
Change history

Change history

Date

Meeting

TDoc

CR

Rev

Cat

Subject/Comment

New version

2021-04

CT4#103-e

C4-212292

Initial TS skeleton.

0.0.0

2021-04

CT4#103-e

C4-212598

Added scope, introduction, references, and abbreviations.

0.1.0

2021-05

CT4#104-e

C4-213529

Aligned introduction terminology. Added, updated references.

0.2.0

2021-08

CT4#105-e

C4-214758

Aligned interfaces, added Nnef_Auth service.

0.3.0

2021-10

CT4#106-e

C4-215522

Several alignments with stage-2, clean-up, added OpenAPI for Nnef_Auth.

0.4.0

2021-11

CT4#107-e

C4-216474

Several further alignments with stage-2: aligned API and operation names, terminology. Further clean-up done.

0.5.0

2021-12

CT#94

CP-213160

V1.0.0 presented for information

1.0.0

2022-01

CT4#107bis-e

C4-220456

Several consistency issues addressed. Implemented pCRs C4-220121, C4-220122, C4-220285, C4-220291, C4-220292, C4-220293, and C4-220387

1.1.0

2022-02

CT4#108-e

C4-221594

Further consistency issues addressed. Implemented pCRs C4-221324, C4-221494, C4-221519, and C4-221340.

1.2.0

2022-03

CT#95e

CP-220109

TS presented for approval

2.0.0

2022-03

CT#95e

TS approved

17.0.0

2022-06

CT#96e

CP-221044

0001

1

Add Notification Correlation id

17.1.0

2022-06

CT#96e

CP-221044

0002

1

Indication of UAS service release

17.1.0

2022-06

CT#96e

CP-221044

0004

Removal of revoke cause

17.1.0

2022-06

CT#96e

CP-221028

0005

Remove the apiVersion placeholder from the resource URI variables table

17.1.0

2022-06

CT#96e

CP-221282

0007

1

29.256 Rel-17 API version and External doc update

17.1.0

2022-09

CT#97e

CP-222036

0009

Fix for formatting of OpenAPI description field

17.2.0

2022-09

CT#97e

CP-222058

0010

29.256 Rel-17 API version and External doc update

17.2.0

2022-12

CT#98e

CP-223056

0008

2

Corrections for Auth message type

17.3.0

2022-12

CT#98e

CP-223066

0011

29.256 Rel-17 API version and External doc update

17.3.0