Si tratta in particolare di quando sviluppare e implementare il codice per l'autenticazione e l'autorizzazione. Faccio non significano cose che lo sviluppatore dovrebbe conoscere come exploit o utilizzo di Prepared Statements per SQL Injection e così via . Questi dovrebbero essere assiomatici per lo sviluppatore.
Ciò che intendo è quando nel tuo ciclo di sviluppo costruisci l'Autenticazione e l'autorizzazione "sistema / appartenenza / qualsiasi cosa tu voglia chiamare"? Lo fai mentre stai andando avanti, forse lo spegni o ti rendi un amministratore, quindi puoi eseguire il tuo codice? Che si tratti di "Role Based" o "Activity Based" o qualcos'altro che non credo dovrebbe avere importanza per questa domanda. Potrei sapere quale sicurezza voglio usare, il sistema, l'architettura, ecc., Ma quando nel SDLC metto quel sistema nel codice reale (se l'ho scritto o è un plugin)?
Non intendo il database. Solo l'applicazione e quella con nomi utente e password. Non intendo nella mia mente. Intendo quando ti siedi per iniziare a scrivere i tuoi test o comunque scrivi il tuo software. Quando comincio effettivamente a digitare le informazioni sulla sicurezza? Prima di fare qualcosa, durante, dopo di esso? Tutti e tre +?
Domanda secondaria, il TDD dovrebbe richiedere la sicurezza mentre procedo?
C'erano promettenti titoli delle domande, ma non la risposta (s) stavo cercando. si sente come se potesse ostacolare il funzionamento delle cose. Ma non voglio nemmeno che sia un ripensamento.
Ho messo la parola nel titolo per enfatizzare cosa intendevo per "quando".
Modifica: ad esempio, aggiungo questo mentre faccio questo:
// Create a PrincipalPermission object.
PrincipalPermission MyPermission =
new PrincipalPermission("MyUser", "Administrator");
o
[AttributeUsage(AttributeTargets.Field, AllowMultiple=false)]
o
IsInRole...
Non sto chiedendo quale tipo di sicurezza dovrei implementare. Non c'è modo per te di saperlo. Sto solo chiedendo quando deve essere digitato.
(Codice I copiato dai siti MS)