Recently, I placed an order on Amazon.de and the payment is done via SEPA Direct Debit. When I was paying, I gave my IBAN, SWIFT CODE, and NAME. Later, my money got debited when the order dispatched. So my question is suppose if someone is having my bank details, can they make payment directly on Amazon without my permission or intervention?
Yes, they could use your info to pay with Amazon (or every other online shop that accepts it). But thats why you should regulary check you bank account. If there is some money transfer you didn't approve, you need to call your bank and they should be able to fix this for you. At some banks this can be done with a single click in their online banking, where you click on that wrong transfer and can choose "I didn't approve that, give me my money back" (or something similar).
e.g. In Germany you have 8 weeks to report a wrong transfer, and don't even need to prove that you didn't approve it.