You can try the "--proxy-user" command line argument for spark-submit.
That requires that your RM configuration allows the user running your
AM to "proxy" other users. And I'm not completely sure it works
without Kerberos.
See:
Hi, i have an ApplicationMaster which accepts requests and launches
container on which it launches spark-submit --master yarn. In request i
have a field "username" - the user i want to laucnh a job from. How can
i set a user which will be run conmmand on a container? Currently they
all running