I metodi HTTP hanno poco a che fare con la sicurezza di per sé. Un metodo come DELETE /users/1
potrebbe facilmente essere implementato come POST /users/1/delete
o anche GET /users/1/delete
(i GET non dovrebbero mai avere effetti collaterali, ma ciò non impedisce comunque ad alcuni sviluppatori di farlo).
Dovresti quindi trattarli in modo simile a qualsiasi altro metodo HTTP. I GET non dovrebbero cambiare lo stato del server, quindi in genere è sufficiente verificare che il client abbia accesso in lettura alla risorsa richiesta. I PUT dovrebbero essere utilizzati per aggiornare una risorsa interamente sul posto (sebbene siano spesso utilizzati anche in modo simile al verbo PATCH), quindi è necessario assicurarsi che il client abbia i privilegi per farlo. Allo stesso modo, è necessario inviare DELETE per richiedere l'eliminazione di una risorsa. Quindi vorresti assicurarti che un utente abbia il permesso di farlo.
In breve: tratta i verbi come descrittori del tipo di azione che l'utente desidera eseguire. Autenticali e autorizzali a eseguire queste azioni come richiesto dai parametri di sicurezza della tua particolare applicazione.