Skip to content

REF-99 Audit refused responses and login requests, answer 400 for refused responses - #110

Merged
thomasnymand merged 3 commits into
mainfrom
feature/REF-99-audit-and-error-status
Nov 2, 2026
Merged

thomasnymand merged 3 commits into
mainfrom
feature/REF-99-audit-and-error-status

Conversation

@thomasnymand

Copy link
Copy Markdown
Collaborator

Fixes from running NemLog-in's integration test cases against 3.1.0 in DevTest4.

Audit log

  • The entry for an AuthnRequest identifies it (ID, IssueInstant, Issuer) instead of holding its XML, as the release notes say. The XML is traced at Verbose.
  • A response refused at the assertion consumer service is audited as "Response refused: …".
  • A login request refused for its level of assurance or profile is audited as "Login refused: …".
  • An outgoing LogoutResponse is audited with its binding and status.

HTTP status

  • A response refused at the assertion consumer service answers 400 instead of 500, including one that can't be read or arrives without a session. A fault in the service provider stays 500, and configuration errors outside this path are unchanged.
  • The artifact binding isn't changed.

Docs

  • The readme and release notes state the encryption the library accepts: AES-CBC with RSA-OAEP. The SP metadata lists these, and they must be kept when registering it.
  • The readme states that MaximumSessionLength is checked with the allowed clock skew.

Tested: 356 unit tests, and the affected cases against DevTest4 with WebsiteDemo: IT-LOG-1, IT-REPL-1, IT-SLO-2 and a refused level of assurance. IT-FORCE-1 was also run.

…used responses

Found in the DevTest4 test of 3.1.0:
- The audit entry for an AuthnRequest identifies it instead of holding its XML, which is traced at Verbose.
- A response refused at the assertion consumer service is audited and answered with 400; a fault in the service provider stays 500.
- A refused login request and an outgoing LogoutResponse are audited.
- The readme and release notes state the encryption the library accepts and that MaximumSessionLength is checked with the clock skew.
@thomasnymand
thomasnymand merged commit f2eb16e into main Nov 2, 2026
2 checks passed
@thomasnymand
thomasnymand deleted the feature/REF-99-audit-and-error-status branch November 2, 2026 11:26
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 participant