This page presents the requirements from the reference specification fulfilled by GEANT IdPaaS proof of concept. The page can be used as a reference for those that plan to build an IdP PaaS solution. Please note that this work informed the IdP PaaS Reference Design documentation.

Content:

IdP Creation [IC]

The platform must provide a function to create a new IdP, which results in an deployed IdP configured based on user input.

IDRequirementDescriptionsamlidp.io
IC1Accept user inputThe platform MUST accept user input for IdP configuration for all values defined as configurable in section IdP requirements

DONE

IC2Unique entity IDA new entity ID MUST NOT already exist in eduGAIN, nor in any national federation

DONE

IC3Non-reusable entity IDA new entity ID MUST NOT be equal to one issued previously by this platform

DONE

IdP Deletion [ID]

The platform must provide a function to delete an existing IdP to delete a formerly created IdP entirely.

IDRequirementDescriptionsamlidp.io
ID1Complete deletion

It MUST be possible to delete an IdP and non-technical data upon request. This includes at least:

  • Any related user data
  • Personal log data

DONE

ID2Delayed deletionOnce deletion is triggered the IdP MUST be deactivated, but MUST NOT be deleted for a retention period of three months.

DONE

ID3Delete notificationThe administrator and technical contacts of an IdP MUST be notified immediately once deletion is requested.

MISSING

ID4IdP recoveryThe administrator MUST be able to recover and reactivate an IdP within the retention period.

MISSING

IdP Management [IM]

The platform must provide a function to alter the configuration of an existing IdP without loss of user data.

IDRequirementDescriptionsamlidp.io
IM1Edit configurationAdministrators MUST be able to change the IdP configuration for all values defined as configurable in section IdP requirements

DONE

SP Management [SM]

IDRequirementDescriptionsamlidp.io
SP1Add and configure SPsIt MUST be possible to configure entities to be read from metadata

DONE

SP2Attribute release policy

There MUST be an option to configure attributes released for

  • all service providers
  • an specific service provider

DONE

User Management [UM]

IDRequirementDescriptionsamlidp.io
UM1Local user managementThe solution MUST include a local user management to create, update and delete identities.

DONE

UM2Remote user managementThe solution MUST be capable to use identities from an existing user database at a remote location.

DONE

Authentication & Authorization [AA]

IDRequirementDescriptionsamlidp.io
AA12FA authenticationThe access to the management interface MUST require at least a second factor.

MISSING

AA2Account recoveryThe software SHOULD NOT offer a self service to recover administrative accounts.

DONE

Software Deployment [SD]

IDRequirementDescriptionsamlidp.io
SD1Operational documentationThe deployment MUST be sufficiently documented so that it can be performed easily and independently.

DONE

SD2Automatic deploymentDeploying the software itself SHOULD be automated.

DONE

IdP requirements

The following requirements apply to the hosted IdP itself.

Authentication [AU]

This category defines requirements for the authentication performed by the IdP.

IDRequirementDescriptionConfigurablesamlidp.io
AU1Handle SAML authenticationThe IdP MUST be able to handle SAML2 authenticationNo

DONE

AU2Common standardsIdP MUST adhere to saml2int, and relevant eduGAIN profilesNo

DONE

AU3No SAML1IdP MUST NOT be able to handle SAML1 authenticationNo

DONE

AU4Identifier support

The IdP MUST support the following identifier types:

  • persistent nameid
  • transient nameid
  • ePPN
  • ePTID
  • subject ID
No

DONE

AU5eduPerson support

The IdP MUST support the following eduPerson attributes:

  • DisplayName
  • Email
  • CN
  • SN
  • Name
  • edupersonScopedAffiliation
  • edupersonEntitlement
No

DONE

AU6SCHAC support

The IdP MUST support the following SCHAC attributes:

  • schacHomeOrganisation
No

DONE

AU7eduMember support

The IdP MUST support the following eduMember attributes:

  • IsMemberOf
No

MISSING

AU8Force AuthnThe IdP MUST support SAML Force authenticationNo

DONE

AU9SSO session timeThe IdP MUST support SSO, session time must be configurableYes

DONE

AU10Authentication ContextThe IdP MUST support providing LoA information through Authentication Class Context refNo

DONE

Credential Handling [CH]

IDRequirementDescriptionConfigurablesamlidp.io
CH1Local Credential SourceThe IdP MUST allow for credentials to be provided locallyYes

DONE

CH2PasswordsThe IdP MUST support use of passwords for authenticationNo

DONE

CH3EncryptionAll locally stored and or cached personal data of end users MUST be  stored encrypted where the encryption key is the SHA256 over the password or tokenidNo

DONE

Attribute release [AR]

IDRequirementDescriptionConfigurablesamlidp.io
AR1R&E Entity categoriesThe IdP MUST be able to use commonly used categories like R&S and SIRTFI  to be used as filter for attribute release policyYes

DONE

AR2SP metadata attributesThe product MUST support release of attributes based on SP metadata requirementsYes

DONE

AR3

Per SP attributesThe product MUST support release of attributes based on per SP basis (configured manually)Yes

DONE

AR4Attribute value filteringThe product MAY support filtering of attribute values (e.g. for affiliation) on a per SP basisNo

MISSING

User management [UM]

IDRequirementDescriptionConfigurablesamlidp.io
UM1Local GUIA local per customer GUI MUST be provided to manage users in the local user store if so configuredYes

DONE

UM2Local GUI AuthNAuthentication for the a local GUI MUST NOT use any of the IdPs on the platformNo

DONE

UM3Local Password resetA password reset function MUST be provided for users based on the email stored in the local storeYes

DONE

Metadata publishing [MP]

IDRequirementDescriptionConfigurablesamlidp.io
MP1Publish SAML metadataThe product MUST publish SAML metadata for the entityNo

DONE

MP2R&E Entity categories

The product MUST allow publishing of specific entity categories:

  • R&S
  • SIRTFI
Yes

DONE

Metadata consumption [MC]

IDRequirementDescriptionConfigurablesamlidp.io
MC1Consume entity XML metadataThe product MUST allow importing an entity XMLYes

DONE

MC2Consume entity metadata through URLThe product MUST allow importing URL based metadataYes

DONE

MC3Consume entities metadata through MDQThe IdP MUST be able to consume metadata via MDQYes

DONE

Logging [LO]

IDRequirementDescriptionConfigurablesamlidp.io
LO1Transaction loggingThe product MUST support logging authN transaction in a separate logNo

DONE

LO2Error loggingThe product MUST support logging errors in a separate logYes

DONE

LO3Log persistenceLogs MUST be deleted automatically after a given time. Time must be configured on a per log basis. No

DONE

LO4Log retrievalLogs MUST be downloadable by an appropriate adminNo

MISSING

LO5Secure logsPlatform admin MUST NOT have access to user dataNo

DONE

Statistics [ST]

IDRequirementDescriptionConfigurablesamlidp.io
ST1Per SP transactionsThe IdP MUST provide transactions per SP over a given period of time (day/month/week/year) No

MISSING

ST2Transaction AggregatesThe IdP must provide aggregated transactions over a given period (day/month/week/year)No

MISSING

ST3Fticks readyProduct SHOULD preconfigure IdP with Fticks supportYes

MISSING

Branding and contact data [BC]

IDRequirementDescriptionConfigurablesamlidp.io
BC1IdP displaynameIdP MUST have a multi language displaynameYes

DONE

BC2LogoIdP MUST have a logoYes

DONE

BC3Admin contactIdP MUST have an administrative contactYes

DONE

BC4Tech contactIdP MUST have an technical contactYes

DONE

BC5Support contactIdP MUST have an end user support contactYes

DONE

BC6Security contactIdP MAY have a security support contactYes

DONE

  • No labels