Deploying an ec2 instance without using aws secret access key and aws access key id

my workstation and server are both RHEL ec2 instances
whenever I run the command:-

knife ec2 server create
-r “role[----------]”
-I ami-XXXXXXXX
-f t2.small
-S knife
-i ~/.ssh/XXXXXXXXXXX.ppk
–ssh-user ec2-user
–region us-east-1
-Z us-east-1a

I am getting the error as
ERROR: You did not provide a valid ‘AWS Access Key Id’ value.
ERROR: You did not provide a valid ‘AWS Secret Access Key’ value.

Nor I want to use the secret access key and access key id and neither I want to save them on the workstation.
is there any other way to deploy a new ec2 instance(node) ,perhaps using IAM role .
thank you