Recentemente si è verificata una situazione in cui un cliente desidera un'API pubblica che non richiede la registrazione o l'accesso da parte dell'utente (nessuna password). Il team di sicurezza ha identificato che l'API lato server deve implementare uno schema di autenticazione che il lato client può utilizzare per impedire l'accesso all'API.
Finora tutti gli schemi che sembrano essere utilizzati con un segreto esposto sul lato client si basano sull'idea che il dominio originale possa essere protetto. Pertanto, vi è la previsione che l'agente utente lato client soddisfi le policy di sicurezza stabilite relative all'origine del dominio della richiesta.
Esempio: link
La mia domanda è: cosa impedisce a qualcuno di utilizzare un proxy server su un dominio diverso, che utilizza la chiave esposta sul lato client e agisce come un cattivo programma utente, quindi falsificare le intestazioni del dominio delle richieste per stabilire la fiducia? Il diagramma per visualizzare lo scenario
Qual è lo schema di sicurezza di autenticazione più consolidato per questo tipo di scenario?
Spero che qualcuno possa contribuire a chiarire questo aspetto, perché sto davvero cercando di capire quanto sono sicuri gli schemi senza password?