I think you are not using the correct user for running Beats. You have configured:
The kibanaserver user is only useful for running Kibana.
What you need is a user that has permissions to write to the index that Beats is using. We have just recently published an article about ingestion with Beats and logstash, this should explain the required steps:
There is no built-in role for a “Beats only” user. However, the setup is pretty straight forward and you can use the sg_logstash role as a template. Just remove all permissions for the logstash indices and leave everything else in place, like: