Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix: added ContainsKey to check if exists revocation endpoint #42

Open
wants to merge 8 commits into
base: main
Choose a base branch
from

Conversation

PiemP
Copy link
Contributor

@PiemP PiemP commented Jan 23, 2025

fix: removed exception throw if revocation endpoint is missing
style: changed code to avoid warning remarks

fixes #41

fix: removed exception throw if revocation endpoint is missing
style: changed code to avoid warning remarks
@PiemP
Copy link
Contributor Author

PiemP commented Jan 23, 2025

Da valutare il fatto che ho rimosso la generazione dell'eccezione nel caso in cui il revocation endpoint non sia impostato. Non so se questa cosa è corretta.

@PiemP PiemP marked this pull request as ready for review January 23, 2025 12:01
@PiemP PiemP marked this pull request as draft January 23, 2025 15:42
PiemP added 4 commits January 23, 2025 19:07
fix: added OPMetadata_OpenIdConnectConfiguration with custom prop
fix: restored exception throw in SpidCieHandler when empty revocation endpoint
fix: use OPMetadata_OpenIdConnectConfiguration custom prod instead of AdditionalData
refactor: restored revocation endpoint retrieve from AdditionalData
refactor: restored logo and name retrieve from AdditionalData
refactor: restored use of OpenIdConnectConfiguration
fix: ignore OpenIdConnectConfiguration during json parse to use specific function
fix: changed way to parse OP entiry conf to use specific function for OpenIdConnectConfiguration
@PiemP PiemP marked this pull request as ready for review January 24, 2025 12:08
fix: added object to allow serialization of openid_provider
@PiemP
Copy link
Contributor Author

PiemP commented Jan 24, 2025

Ho aggiunto un oggetto OPResolveMetadata_SpidCieOIDCConfiguration per il metadata del resolve endpoint nella speranza che questo venga correttamente serializzato nella risposta dell'endpoint. Questa modifica non è stata testata.

@PiemP
Copy link
Contributor Author

PiemP commented Jan 24, 2025

Aggiunto un test per verificare il risultato della serializzazione delle informazioni che vengono utilizzate nel resolve endpoint per generare il JWT che viene restituito. Patendo dal contenuto del file jwtOP.json ho ottenuto questo risultato:

{
    "metadata": {
        "openid_provider": {
            "acr_values_supported": [],
            "authorization_endpoint": "http://127.0.0.1:8000/oidc/op/authorization",
            "claims_supported": [],
            "claims_locales_supported": [],
            "claims_parameter_supported": true,
            "claim_types_supported": [],
            "display_values_supported": [],
            "frontchannel_logout_session_supported": null,
            "frontchannel_logout_supported": null,
            "grant_types_supported": [],
            "id_token_encryption_alg_values_supported": ["RSA-OAEP"],
            "id_token_encryption_enc_values_supported": ["A128CBC-HS256"],
            "id_token_signing_alg_values_supported": [],
            "introspection_endpoint": "http://127.0.0.1:8000/oidc/op/introspection/",
            "introspection_endpoint_auth_methods_supported": [],
            "introspection_endpoint_auth_signing_alg_values_supported": [],
            "logout_session_supported": false,
            "request_object_encryption_alg_values_supported": [],
            "request_object_encryption_enc_values_supported": [],
            "request_object_signing_alg_values_supported": [],
            "response_modes_supported": [],
            "response_types_supported": [],
            "scopes_supported": [],
            "subject_types_supported": [],
            "token_endpoint": "http://127.0.0.1:8000/oidc/op/token/",
            "token_endpoint_auth_methods_supported": [],
            "token_endpoint_auth_signing_alg_values_supported": [],
            "ui_locales_supported": [],
            "userinfo_endpoint": "http://127.0.0.1:8000/oidc/op/userinfo/",
            "userinfo_encryption_alg_values_supported": [],
            "userinfo_encryption_enc_values_supported": [],
            "userinfo_signing_alg_values_supported": [],
            "Issuer": null,
            "TokenEndpoint": "http://127.0.0.1:8000/oidc/op/token/",
            "revocation_endpoint": "http://127.0.0.1:8000/oidc/op/revocation/",
            "op_name": "Agenzia per l\u2019Italia Digitale",
            "op_uri": "https://www.agid.gov.it",
            "contacts": ["ops@https://idp.it"],
            "client_registration_types_supported": ["automatic"],
            "code_challenge_methods_supported": ["S256"],
            "request_authentication_methods_supported": {
                "ar": ["request_object"]
            }
        }
    },
    "trust_marks": [],
    "trust_chain": [],
    "iss": "http://127.0.0.1:5000/ta",
    "sub": "http://127.0.0.1:8000/oidc/op/",
    "iat": 1737730378,
    "exp": 1737903178
}

Verificata la presenza della proprietà revocation_endpoint che mi porta a pensare che la serializzazione di OpenIdConnectConfiguration dovrebbe avvenire in modo corretto.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[1_SimpleSPWebApp] KeyNotFoundException LOGOUT
1 participant