Abbastanza spesso we come across businesses especially Start-ups and SMEs who have no control over their digital assets. Purely because it was created by an employee whose no longer with the organization, or was not handed over back to the company’s digital silo, causing an impact on time, costs and control for the business , and at times posing bottlenecks during very crucial situations when a change is needed. For business, time is money and anything that may make you lose time, in effect is CRITICAL. The motivation and purpose of writing this article, is driven from this need, to define a “Hygiene Checklist for Managing Digital Assets” , so that you as a business do not make the same mistake and can be better equipped for the same.
Since the context of Digital Assets can be huge, let me stick to the ones that pertain to the web and mobile applications that you run, and lets keep aside any other digital assets for the time being such as IT assets, digital physical assets etc.
Quali sono le risorse digitali utilizzate dalle applicazioni web e qual è il modo migliore per gestirne la proprietà. Quali sono le domande che dovresti sapere come imprenditore quando possiedi queste risorse digitali e quali sono le cose da fare e da non fare qui.
- Hosting e DNS
Your app can be hosted in a shared hosting environment like GoDaddy, or a dedicated affordable VPS hosting like Contabo, DigitalOcean or Linode, or a cloud environment like AWS Ec2 or Azure. Whichever environment it is, its important that the ROOT account of hosting is under the ownership of a common business email, with 2-factor authentication linked to a mobile number that belongs to the business. The stakeholders of the business should get ALL notifications from the hosting account at all times, because if there are billing failures for consecutive 3 months your account can be terminated, or the data deleted and its a HUGE risk. Basically the email configured here has to be MONITORED at all times, and the data is too critical if you fail to do so.
And as important as the control on hosting, is the control on the DNS or domain name provider (Could be GoDaddy, a well-known domain naming platform, Mercaba or any others). The primary account with the domain registrar must be under the common business email, including the mobile number linked to it for 2-factor auth. The notifications for expiry of domain names must be set correctly so that you get timely alerts, and has to be tracked to avoid unexpected downtimes or outages.
- La tua applicazione Web e le interfacce API
L'applicazione web sarà nel tuo ambiente di hosting ma è importante saperlo
- Quante istanze stai eseguendo e per quante ti vengono fatturate?
- Qual è lo stack tecnico in esecuzione su ciascuna istanza, ad esempio, se its PHP O Nodo O Reagire o una combinazione di stack per backend e frontend.
- Dov'è ospitato il database e quanti database stai utilizzando.
- Quali sono le integrazioni di terze parti per l'app e hai il controllo degli account utilizzati per ciascuna di queste.
- L'applicazione utilizza altri servizi come Elastic Search, S3 o qualsiasi altro servizio che viene addebitato/fatturato ulteriormente e su quale base viene fatturato.
- La cosa più importante è chi ha accesso all'ambiente di hosting, come viene controllato e qual è il processo utilizzato per concedere/revocare l'accesso. Idealmente non dovresti MAI condividere l'accesso all'account root, il modo migliore è aggiungere utenti/invitarli a utilizzare l'account come un tipo specifico di utente in base al livello di accesso richiesto. Oppure concedi l'accesso a un livello ssh o specifico per il lavoro che è necessario svolgere.
- Base del codice dell'applicazione Web
È importante ogni volta che esegui un web o applicazione mobile che disponi di un account di repository del codice sorgente gestito per la tua azienda, sia esso Github o Bitbucket o servizi simili. L'e-mail utilizzata per la creazione dell'account DEVE essere di proprietà dell'azienda e per ciascun progetto è possibile fornire agli sviluppatori il livello di accesso richiesto. Deve essere presente un processo per aggiungere utenti/revocare utenti in base all'entrata/uscita dai progetti. Ed è anche possibile concedere l'accesso in lettura a qualcuno per visualizzare il codice, se desideri lavorare con una nuova società di sviluppo e concedergli l'accesso per controllare il codice.
Per una protezione aggiuntiva, è bene aggiungere un ulteriore livello di protezione per il ramo master/principale che ha il codice di produzione, in modo tale che richieda l'approvazione per qualsiasi unione di codice a questo ramo e proteggere il ramo dall'eliminazione, ecc. Se vedi modi per abilita la protezione dei rami per Git, otterrai ottimi spunti al riguardo.
- Integrazioni di terze parti
Al giorno d'oggi la maggior parte delle applicazioni web dispone di numerose integrazioni di terze parti, le più comuni delle quali sono Google Maps, Google Analytics, gateway di pagamento, gateway SMS per la convalida OTP, Mailchimp per gli abbonamenti alle newsletter ecc. È importante garantire che tutti gli account utilizzati dall'azienda provengono dalla comune email aziendale, con autenticazione a 2 fattori collegata a un numero di cellulare appartenente all'azienda. Per garantire inoltre che tutte le chiavi API utilizzate per l'integrazione siano generate con il nome del progetto specifico e fornite al team di sviluppo/integrazione. Sarebbe un problema se consenti agli sviluppatori di utilizzare i propri account, creare queste credenziali e consentirne l'utilizzo, anche nel caso di una mappa Google o di un servizio gratuito. Ad un certo punto l'azienda dovrà passare agli account a pagamento in base all'utilizzo e sarà quindi complicato cambiare o aggiornare l'account senza problemi.
- Google Analytics, accessi social o altri
Its good to always plan and integrate analytics on all digital assets you run, especially if its customer facing. And the business should own the Google Analytics account that you would be using, the same way the business should own all the social media accounts it uses for all its integrations.
- Backup e istantanee
Sebbene backup e snapshot facciano parte della strategia di hosting, a seconda del tipo di hosting è importante verificare se sono sempre disponibili. Piattaforme cloud come AWS e Azure, mantengono gli snapshot, ma non tutti i provider di hosting potrebbero mantenere backup continui dei dati ed è sempre una buona strategia mantenere backup REMOTI regolari.
Quando si tratta di app mobili
- Credenziali PlayStore e Apple Store
These are credentials used by developers to publish the apps to the Google Play Store or Apple’s App Store, and it has to be owned by the business, and not allow developers to use their own. That way you always have control over App analytics and updates, and you get notified of any deprecated versions and upgrades that maybe needed for the apps. The respective developers can be given access by invite only, to the projects they work on and nothing further is needed here.
- Notifiche push – Credenziali
La maggior parte delle app mobili utilizza un servizio di terze parti per le notifiche push, ad esempio Firebase o altri. Qualunque sia quello che usi, è importante avere il controllo sull'account utilizzato qui.
- Base di codice dell'applicazione mobile
Base di codice dell'app mobile proprio come applicazioni web il codice base deve essere mantenuto in uno strumento di controllo della versione del codice come Git o BitBucket. Anche qui valgono le stesse regole previste per la gestione del codice web.
In this era, we cannot take digital assets lightly as they are the lifeline of the business at all times, and its extremely important to understand how to protect and safeguard it at all times. The above is just a start, from a hygiene and must-do perspective and as we dig deeper there are further best practices and standards that can be followed. But the most important CHECK is to ensure that we have this in place to start with!
VUOI CONSULTARE CON NOI….CONTATTACI ORA!