|
| 1 | +# Resource Owner Password Credentials |
| 2 | + |
| 3 | +!!! Warning |
| 4 | + The Resource Owner Password Credentials (ROPC) is deprecated and is no longer considered secure for most scenarios. It directly handles |
| 5 | + usernames and passwords, which could increase the risk of security vulnerabilities. We strongly recommend migrating |
| 6 | + to [Custom Registration](../custom-registration/index.md) flows, which provide enhanced security features and better align with |
| 7 | + current best practices in identity management. Additionally, it's imperative to restrict the use of the ROPC flow solely to private |
| 8 | + clients capable of securely holding a secret. Failure to protect this secret renders the token endpoint vulnerable to credential |
| 9 | + stuffing attacks. |
| 10 | + |
| 11 | +The `Resource owner password credentials` grant type cannot be chosen when either `Authorization code` or `Device code` is configured and |
| 12 | +vice versa. |
| 13 | + |
| 14 | +Features that require user interaction via the browser are not supported for web clients using the ROPC. So for example consent |
| 15 | +and additional user authentication (SMS) are not available. |
| 16 | + |
| 17 | +The ROPC feature works in combination |
| 18 | +with [SAML ECP PAOS binding](https://docs.oasis-open.org/security/saml/Post2.0/saml-ecp/v2.0/cs01/saml-ecp-v2.0-cs01.pdf). Therefore a web |
| 19 | +client using this feature should have |
| 20 | +a [SAML identity provider configured](../general-app-config/identity-providers/identity-providers.md#configure-a-saml-identity-provider). |
| 21 | +The configured SAML identity provider requires a single sign on service with a `urn:oasis:names:tc:SAML:2.0:bindings:SOAP` binding in its |
| 22 | +metadata. Attribute mappings of the identity provider will be used to set the user id and other user properties. |
| 23 | + |
| 24 | +The [RFC](https://tools.ietf.org/html/rfc6749#section-4.3.2) specifies that the authorization server should protect against brute force |
| 25 | +attacks. For this protection the OneWelcome Access relies on the used identity provider. |
| 26 | + |
| 27 | +When a [scope verification service](../integration-extension/scope-verification/scope-verification.md) is configured, requested scopes will |
| 28 | +be verified. In case of a verification failure a `400 Bad request` response with `unauthorized_user` error is returned. This error response |
| 29 | +contains a `error_uri` field containing the scope validation failed uri configured for this [scope](../general-app-config/scopes/scopes.md). |
| 30 | + |
| 31 | + |
| 32 | +For other error responses please refer to the [RFC](https://tools.ietf.org/html/rfc6749#section-4.3). |
0 commit comments