---
title: Data Store Decision node
description: The Data Store Decision node checks that the credentials provided during authentication match the ones stored in the configured data store for the realm.
component: auth-node-ref
version: latest
page_id: auth-node-ref::data-store-decision
canonical_url: https://docs.pingidentity.com/auth-node-ref/latest/data-store-decision.html
keywords: ["Nodes &amp; Trees", "Journeys", "Authentication", "Identity Store", "LDAP", "Data Store"]
page_aliases: ["auth-node-data-store-decision.adoc"]
superseded_by: https://docs.pingidentity.com/auth-node-ref/latest/data-store-decision.html
section_ids:
  examples: Examples
  datastore-decision-example1: "Example 1: Simple username and password collector nodes with Data Store Decision node"
  datastore-decision-example2: "Example 2: Grant the user several attempts to enter their credentials correctly"
  availability: Availability
  inputs: Inputs
  dependencies: Dependencies
  configuration: Configuration
  outputs: Outputs
  callbacks: Callbacks
  outcomes: Outcomes
  errors: Errors
---

# Data Store Decision node

The Data Store Decision node checks that the credentials provided during authentication match the ones stored in the configured data store for the realm.

The following are alternate nodes that you can use in your journeys depending on your specific use cases:

* The [LDAP Decision node](ldap-decision.html) supports LDAP Behera Password Policies with separate outcomes for accounts that are locked and passwords that have expired.

* The [Identity Store Decision node](cloud/identity-store-decision.html) is an enhanced node with additional outcomes. Use this node if your authentication journey needs more functionality than a simple `True` or `False` outcome.

## Examples

### Example 1: Simple username and password collector nodes with Data Store Decision node

![data store decision login](_images/data-store-decision-login.png)

This example illustrates a simple login process. The journey involves a [Page node](page.html) that contains two embedded nodes: [Platform Username node](platform-username.html) and [Platform Password node](platform-password.html). To enhance user experience, the Page node lets users input their username and password on a single page, instead of splitting them across two different pages.

The Data Store Decision node has two outcomes: `True` or `False`. When the outcome is `True`, it triggers a [Login Count Decision node](login-count-decision.html). The [Increment Login Count node](increment-login-count.html) then moves to an [Inner Tree Evaluator node](inner-tree-evaluator.html), which performs additional login processes. The `False` outcome connects directly to a failure node, indicating a failed state where the username and/or password provided by the user did not match the information stored in the data store.

### Example 2: Grant the user several attempts to enter their credentials correctly

![data store decision with retry](_images/data-store-decision-with-retry.png)

In the following example, when an authentication attempt fails at the Data Store Decision node, you can direct it to a [Retry Limit Decision node](retry-limit-decision.html). The [Retry Limit Decision node](retry-limit-decision.html) determines the number of retries allowed and either retries the login attempt or rejects it. If the journey rejects the login attempt after reaching the configured limit, for example three attempts, the operation results in an account lockout.

## Availability

| Product                               | Available? |
| ------------------------------------- | ---------- |
| PingOne Advanced Identity Cloud       | Yes        |
| PingAM (self-managed)                 | Yes        |
| Ping Identity Platform (self-managed) | Yes        |

## Inputs

This node requires the `realm`, `username`, and `password` properties in the incoming node state.

Implement a [Platform Username node](platform-username.html) and a [Platform Password node](platform-password.html) earlier in the journey.

Alternatively, implement a [Zero Page Login Collector node](zero-page-login-collector.html).

## Dependencies

The Data Store Decision node is a basic node used in many authentication application types, such as basic, push, OAuth 2.0, and social provider authentication applications.

## Configuration

This node has no configurable properties.

## Outputs

This node copies shared and transient state into the outgoing node state.

## Callbacks

This node doesn't send any callbacks.

## Outcomes

Returns a boolean outcome:

* `True`

  The credentials match those found in the data store.

* `False`

  The credentials don't match those found in the data store.

## Errors

The following Data Store Decision node warnings and errors can appear in the logs:

* Warnings

  * "invalid password error"

  * "invalid username error"

* Errors

  * "Exception in data store decision node"
