Uploaded image for project: 'SAFe Program'
  1. SAFe Program
  2. SP-4262

Enable server-side support for multiple IdPs in the CANFAR Science Platform

Change Owns to Parent OfsSet start and due date...
    XporterXMLWordPrintable

Details

    • SRCnet
    • Hide

      BH: SRC Sites need to support user login from multiple SRCNet nodes and/or local AAI systems.  To this aim, CANFAR will be extended to support the use of more than one identity provider.

      BH: SRC Canada and other nodes with existing user bases will be able to reuse their existing data and compute resources to participate in SRCNet 0.1

      Show
      BH: SRC Sites need to support user login from multiple SRCNet nodes and/or local AAI systems.  To this aim, CANFAR will be extended to support the use of more than one identity provider. BH: SRC Canada and other nodes with existing user bases will be able to reuse their existing data and compute resources to participate in SRCNet 0.1
    • Hide

      AC: A user coming to a v0.1 SRCNet Science Platform installation can launch a session with SRCNet IAM credentials.

      AC:  A user coming to the Canadian CANFAR Science Platform installation can launch a session with SRCNet IAM credentials. 

       AC: Demonstration that users can login to the CADC CANFAR instance using both (1) national CADC account details or (2) SKA IAM account details

      Show
      AC: A user coming to a v0.1 SRCNet Science Platform installation can launch a session with SRCNet IAM credentials. AC:  A user coming to the Canadian CANFAR Science Platform installation can launch a session with SRCNet IAM credentials.   AC: Demonstration that users can login to the CADC CANFAR instance using both (1) national CADC account details or (2) SKA IAM account details
    • 4
    • 4
    • 0
    • Team_RED
    • Sprint 5
    • PI23 - UNCOVERED

    • SRC23-PB SRCNet0.1 science-platform-services

    Description

      Science Platform adaptations required for multiple IdP support:

      1. modify cadc-util library to define a suitable immutable principal (issuer+subject) type; deprecate NumericPrincipal 
      2. Use immutable principal in scenarios where caller identity is stored (uws)
      3. For token validation, have the Standard Identity Manager supports multiple issuers.  (or, alternatively, configure a cooperating set of IdP proxies that work together to validate tokens.)
      4. modify posix-mapper service need to handle multiple IdPs and multiple GMS services: use immutable principal instead of HttpPrincipal(username), handle group URI collisions (same name, different authority) in a sane way... but the result is constrained by posix and visible to users in the platform.
      5. Token exchange for GMS calls:  IAM to return or provide a scoped token for making the auth calls to GMS.
      6. cavern integration - cavern relies on the posix-mapper API to map subject<->uid/gid pair and uses PosixPrincipal to persist identity in the filesystem (so not effected directly, just reconfig and rebuild); will include uws updated identity handling
      7. skaha integration - skaha relies on the posix-mapper API to generate uidmap and gidmap for science containers (so not effected directly, just reconfig and rebuild)
      8. Create OIDC IdP selector on portal login.

       

      possible additional work – maybe separate features:

      1. consider logging immutable identity? and/or consider GDPR -compliant logging?

      Attachments

        Structure

          Activity

            People

              Robert.Perry Perry, Robert
              s.goliath sharon goliath
              Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Feature Progress

                Story Point Burn-up: (0%)

                Feature Estimate: 4.0

                IssuesStory Points
                To Do20.0
                In Progress   110.0
                Complete00.0
                Total310.0

                Dates

                  Created:
                  Updated:

                  Structure Helper Panel