HydrologicEngineeringCenter / HydrologicEngineeringCenter/cwms-data-api-client

Respond to OpenAPI security scheme extensions

Open
#283 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Java
Stars
8
Forks
12
Avg merge
2h 44m
Merged PRs (30d)
3

Description

See https://github.com/USACE/cwms-data-api/pull/1357 for current designs.

"OpenIDConnect": {
        "type": "openIdConnect",
        "scheme": "openid",
        "openIdConnectUrl": "http://localhost:8081/auth/realms/cwms/.well-known/openid-configuration",
        "x-kc_idp_hint": {
          "query-parameter": "kc_int_hint",
          "values": [
            "login.gov",
            "federation-eams"
          ]
        },
        "x-oidc-client-id": "cwms"
      }

Something to be aware of is that this data is in the OpenAPI Spec as it's site specific. More thought is required but I suspect this library should "except" these additional details, like allowing extra headers and the bulk processing work should be in hec-client-server as that gets the API URL and retrieves the above openIdCOnnectURL.... maybe it can just pass in all the extensions.... like I said, more thought and discussion required.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reading PR 1357 for the current designs and reviewing how this client handles OpenAPI security schemes. Clarify whether site-specific extensions should be accepted, passed through to hec-client-server, or used for extra headers, then document the agreed behavior and add coverage for the chosen handling.

Written by the indexing model from the issue text.

Assessment

Tech stack
java, openapi
Domain
api, authentication, security
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.