Connect to Elastic Cloud with Java Low Level Rest Client

There seems to be some confusion in your post. You talk about AWS Elasticsearch and AWS Cloud, but your URL is xxxxxxxxxx.eu-central-1.aws.cloud.es.io which is part of Elastic Cloud running on AWS, but it is not AWS Elasticsearch. Those are different services.

We can help you with Elastic Cloud, but we don't have expertise in AWS Elasticsearch. I assume this is just some confusion in terminology, and your URLs are correct and you are trying to connect to Elastic Cloud.

So, with respect to your problem:

Yes, you definitely need to Authenticate yourself.

There's 2 parts to that answer:

  1. Configuring users on your cluster
  2. Using a username and password in your client.

Configuring users on your cluster
When you signed up to Elastic Cloud you would have been given a username and password to connect to your cluster / Kibana. The user would be elastic and the password would have been auto generated.
While you can use that username/password to connect from your client, we strongly discourage it. That user is a superuser that can do everything on the cluster. It can delete all your data, change all your configurations, etc. You should keep that password protected, and not use it within your client.
Instead, you should login to Kibana (using elastic) and create a new username + password for your client. There's some instructions on using the Kibana Security Management UI here:

  1. create a new role, that has the "monitor" cluster privilege, and then appropriate read/write access to whatever indices your client is going to read from/write to.
  2. create a new user, and grant them your new role.

Using a username and password in your client.
The docuentation for how to do this in the Low Level Rest Client is here:

It's fairly self explanatory, but ask if you have any issues.