Estoy tratando de implementar una verificación de identidad para mi extensión de Chrome porque quiero venderla a algunos usuarios. El siguiente código usa la API chrome.identity para obtener el OpenID único en combinación con el correo electrónico que está conectado. Luego, obtiene datos de un pastebin y verifica si la identificación está incluida o no. Si no, me gustaría bloquear al usuario para que no use la extensión. ¿Cuál sería el mejor enfoque?
Mi código:
// license check chrome.identity.getProfileUserInfo({ 'accountStatus': 'ANY' }, async function (info) { email = info.email; console.log(info.id); let response = await fetch('https://pastebin.com/*****'); let data = await response.text(); console.log(data.indexOf(info.id)); if (data.indexOf(info.id) !== -1) { console.log('included'); } else { console.log('not included'); // block chrome extension usage; } });Encontré una solución bastante simple que debería funcionar para la mayoría de los casos.
// license check chrome.identity.getProfileUserInfo({ 'accountStatus': 'ANY' }, async function (info) { email = info.email; console.log(info.id); let response = await fetch('https://pastebin.com/*****'); let data = await response.text(); console.log(data.indexOf(info.id)); if (data.indexOf(info.id) !== -1) { console.log('included'); } else { console.log('not included'); // block chrome extension usage; chrome.browserAction.setPopup({ popup: 'index.html' }); // index.html has to be in the extension folder and can have eg a <h1> which says "Invalid license" } });