Skip to content

Update of Security chapter in CAMARA-API-Design-Guide.md#467

Merged
rartych merged 1 commit intocamaraproject:mainfrom
rartych:security_chapter
Jun 3, 2025
Merged

Update of Security chapter in CAMARA-API-Design-Guide.md#467
rartych merged 1 commit intocamaraproject:mainfrom
rartych:security_chapter

Conversation

@rartych
Copy link
Contributor

@rartych rartych commented May 26, 2025

What type of PR is this?

  • documentation

What this PR does / why we need it:

Update of Security chapter based on comments from PR #441
Mainly Good practices to secure REST APIs were modified.

Reference to OWASP API Security was added.

Which issue(s) this PR fixes:

Fixes #446

Does this PR introduce a breaking change?

  • Yes
  • No

Special notes for reviewers:

Some implementation related points can be transfered to "CAMARA API Implementation Guide" in the future - currently there is no such document.

Changelog input

Update of Security chapter in CAMARA-API-Design-Guide

Copy link
Contributor

@PedroDiez PedroDiez left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Minor suggestions.

LGTM in advance


5. **Authentication and authorization must be considered**
CAMARA uses the authentication and authorization protocols and flows as described in the [Camara Security and Interoperability Profile](https://github.com/camaraproject/IdentityAndConsentManagement/blob/main/documentation/CAMARA-Security-Interoperability.md).
Validate the request parameters as the first step before they reach the application logic.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
Validate the request parameters as the first step before they reach the application logic.
Validate the request parameters as the first step before they reach the application logic.

send relevant error messages and an example of the correct input format to improve the user experience.
5. **Hashing passwords**.

Passwords should never be transmitted in API bodies; however, if it becomes absolutely necessary, they must be hashed to protect the system and minimize potential damage in the event of a compromise. Utilizing strong hashing algorithms is crucial for password security. Effective options include Argon2, PBKDF2, bcrypt, and scrypt, which are designed to securely hash passwords and withstand various attack vectors.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
Passwords should never be transmitted in API bodies; however, if it becomes absolutely necessary, they must be hashed to protect the system and minimize potential damage in the event of a compromise. Utilizing strong hashing algorithms is crucial for password security. Effective options include Argon2, PBKDF2, bcrypt, and scrypt, which are designed to securely hash passwords and withstand various attack vectors.
Passwords should never be transmitted in API bodies; however, if it becomes absolutely necessary, they must be hashed to protect the system and minimize potential damage in the event of a compromise. Utilizing strong hashing algorithms is crucial for password security. Effective options include Argon2, PBKDF2, bcrypt, and scrypt, which are designed to securely hash passwords and withstand various attack vectors.

Copy link
Contributor

@patrice-conil patrice-conil left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@rartych rartych merged commit 7251707 into camaraproject:main Jun 3, 2025
1 check passed
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.

Review of Security chapter in API Design Guide

3 participants