Permessi di Windows per sviluppatori?

9

Lavoro in un'azienda Fortune 500 come sviluppatore di software Windows in R & D. L'IT aziendale si sta attualmente preparando per un'implementazione di Win7 a livello aziendale e, come parte di esso, sta cercando di bloccare completamente i diritti di amministrazione su tutte le caselle (incluse le workstation di sviluppo).

Sono stato incaricato di lavorare con loro per rendere la transizione il più agevole possibile. Fortunato me.

Vorrei sapere se ci sono risorse pubblicate o altre risorse molto rispettate che posso utilizzare per:

  1. scopri dove tracciare una linea nella sabbia
  2. fai il backup della mia posizione.

Personalmente, la mia opinione è che siamo R & D e il nostro compito è fare cose che siano "fuori dagli schemi". Quindi abbiamo bisogno dei diritti di amministratore. Tuttavia, avendo iniziato la mia carriera come amministratore di Windows, sono consapevole dei loro obiettivi e di cosa hanno bisogno per raggiungere. Quello di cui ho bisogno per capire e fare il backup è un modo per costruire l'ambiente in modo che sia IT che R & D possano conviverci e continuare a svolgere il proprio lavoro in modo produttivo.

Le VM di sviluppo con diritti di amministratore locale saranno sicuramente di grande aiuto, ma non in tutti i casi poiché ci interfacciamo con un sacco di hardware personalizzato.

Il CIO che spinge questi cambiamenti è sicuramente un tipo di "puro IT" con una conoscenza limitata del processo di sviluppo, quindi ho bisogno di alcuni riferimenti che sarebbe opportuno condividere con qualcuno del genere.

Non sto cercando di raccogliere molte opinioni personali (molte delle quali sono già state condivise qui ), ho davvero bisogno di white paper, articoli di riviste, opere accademiche, ecc. da usare per dare un strong contributo al management.

    
posta Dan 25.03.2011 - 14:40
fonte

8 risposte

9

Poiché stai andando specificamente a Windows 7, dovresti spingere strong per essere ammesso nelle tue scatole. Ci sono due ottimi motivi per impedire agli sviluppatori di essere amministratori:

  • lo stesso motivo per cui si impedisce a tutti gli altri di essere amministratori, in modo che il malware non faccia cose davvero orribili se dovesse accadere
  • quindi non scriveranno app che funzionano solo se sei un amministratore

Con il controllo dell'account utente, nessuna di queste cose accadrà, poiché le app che avvii non verranno eseguite come amministratore, a meno che tu non le abbia chiesto deliberatamente di farlo. Quindi c'è poco rischio di permetterti di avere un account amministratore.

Alcuni capi hanno una terza ragione: non voglio che tu installi giochi o strumenti non autorizzati. Senza discutere dei meriti di questo motivo, osserverò che di solito non è dichiarato. È necessario l'accesso di amministratore per installare il materiale che si sta scrivendo, per configurare IIS, riconfigurare la macchina per vari tipi di test (ad esempio modificare il file host) ei due motivi "reali" per evitare l'accesso di amministratore non si applicano più a Windows 7 Pertanto, dovresti essere amministratori.

    
risposta data 26.03.2011 - 19:48
fonte
5

Onestamente penso che sarà un caso difficile da fare. Una volta che il management superiore ha preso una decisione, è piuttosto difficile farli cambiare. Se hanno permesso più privilegi sul tuo computer, qualcun altro potrebbe essere in grado di accedere ed eseguire le azioni che questo piano è stato progettato per prevenire.

Questi possono aiutare:

PS: buona fortuna!

    
risposta data 25.03.2011 - 14:49
fonte
3

Un'opzione è chiedere le workstation di test che consentono l'accesso amministrativo.

Un'altra opzione è fare esattamente come si suol dire. Poi quando arriverà il prossimo progetto, non farai alcun progresso perché devi andare all'IT per ogni piccolo cambiamento. Spiega questo al responsabile del progetto e provvederà rapidamente ai diritti di amministrazione.

Una terza opzione è quella di verificare se il tuo reparto è rappresentato nel progetto di migrazione di Win7. In tal caso, contattare il proprio rappresentante e chiedere se può aggiungere diritti amministrativi all'elenco dei requisiti del proprio dipartimento.

Una quarta opzione è scambiare. Il progetto di migrazione in genere ha bisogno di sviluppo per aggiornare il proprio software per Win7. Potrebbe essere possibile condizionare un atteggiamento di supporto sui diritti di amministrazione nel nuovo ambiente.

    
risposta data 26.03.2011 - 15:46
fonte
3

Non riesco a immaginare di provare a svilupparmi senza essere un amministratore locale, tuttavia ritengo che i bisogni varieranno a seconda delle attività di sviluppo e di come il processo di sviluppo e la toolchain siano standardizzati sul posto di lavoro.

In base alla mia esperienza, di solito c'è uno staff di sviluppo senior che dovrà installare vari strumenti di sviluppo (a volte in ore dispari) per prototipare rapidamente o risolvere alcuni problemi critici. Quasi certamente hanno bisogno di un accesso amministratore locale per installare, eseguire il debug, lavorare con i servizi, ecc.

Il personale rimanente potrebbe essere in grado di cavarsela senza, se il tuo set di strumenti è abbastanza costante e in base a ciò che sviluppa / esegue il debug / deploy. Il mio suggerimento sarebbe quello di ottenere un piccolo insieme del vostro staff senior dev di livello più alto insieme, spiegare il problema e le loro opzioni, e farli prendere un paio di giorni per considerarlo, e poi avere una riunione di pianificazione per determinare che tipo di accesso lo staff dovrebbe avere.

    
risposta data 26.03.2011 - 15:58
fonte
3

Da una prospettiva IT pura e una prospettiva di sviluppo, molte aziende risolvono il problema in questo modo:

Metti tutte le caselle di sviluppo su una rete separata. La rete di sviluppo potrebbe essere completamente isolata (senza Internet e senza intranet). In questo caso, gli sviluppatori hanno una casella aziendale separata che viene utilizzata per le comunicazioni e-mail e ufficiali - ad es. accesso a Internet e Intranet. Questa soluzione ha le sue sfide in quanto alcuni IDE (come Eclipse) e altri strumenti di sviluppo presuppongono che tu abbia una connessione live a Internet per ottenere aggiornamenti e plug-in. Tuttavia, la grande maggioranza degli strumenti di sviluppo sa che esistono reti isolate.

Un'altra variante di questo approccio è di avere la rete di sviluppo su una sottorete. Hai accesso indiretto a Internet e intranet attraverso un rigido firewall DMZ, ma gli sviluppatori hanno ancora accesso all'amministratore locale.

    
risposta data 28.03.2011 - 15:42
fonte
1

Considera di dare agli sviluppatori due account.

Il primo è un normale account utente non privilegiato, che è quello da utilizzare per tutto il lavoro quotidiano (incluso lo sviluppo del software). L'altro è un account amministratore locale, che ha solo privilegi di amministratore su macchine specifiche. Dovrebbe essere necessario solo quando si installa effettivamente roba o impostazioni della macchina tweaking.

Assicurati che i servizi di tutti i giorni, come il server proxy Internet, la posta elettronica e così via, riconoscano solo il normale account, in modo che gli sviluppatori non possano semplicemente utilizzare l'amministratore locale per tutto il tempo. Ogni volta che sono richiesti i privilegi di amministratore, viene visualizzato il controllo dell'account utente e offre allo sviluppatore la possibilità di inserire i dettagli di accesso dell'amministratore locale per procedere.

    
risposta data 05.08.2014 - 17:44
fonte
1

Lo sviluppo del software è una bestia fondamentalmente diversa dall'uso letterale di ogni altro di un computer e deve essere trattato come tale.

La possibilità di scrivere il proprio codice e, più importante, tracciare l'esecuzione del codice in fase di debug, richiede l'autorizzazione sul proprio computer che, in qualsiasi altro contesto, ponga un rischio enorme a livello locale sicurezza. Riformato in forma suono-morso:

Permissions required for software development are not appropriate for typical users.

Per svolgere il tuo lavoro, devi essere un amministratore locale. Ma essendo amministratore locale e aggirando la politica di sicurezza, stai teoricamente mettendo in pericolo il resto della rete. Quindi questa preoccupazione deve essere affrontata pure. Il modo in cui le aziende critiche per la sicurezza risolvono questo problema è imponendo due semplici regole:

  1. I programmatori sono l'accesso di amministratore locale sul loro computer di sviluppo.
  2. I computer di sviluppo non sono collegati alla rete aziendale.

Come funziona la seconda regola dipende dal dipartimento IT. A volte la macchina di sviluppo è isolata da sola senza alcuna entrata o uscita dalla rete (vista in diversi appaltatori della Difesa) ea volte la macchina è connessa a una rete "Ospite" o "DMZ" per consentire l'accesso a Internet (scaricare patch, accedere alla documentazione , ecc.) senza mettere a rischio la rete aziendale.

Ora, troverai qualche sorgente ufficiale su questo? Immagino che dipenda da chi vedi come ufficiale . Il parere al riguardo è sostanzialmente unanime. Ma è così ben compreso che è raramente dichiarato. È un po 'come chiedere: " La mia macchina dovrebbe avere il freno di stazionamento? " Non troverai fonti autorevoli che parlano fuori dall'argomento perché hanno cose migliori da fare e tutti sanno già che risposta .

    
risposta data 05.08.2014 - 18:33
fonte
0

Puoi usare un ambiente virtuale?

Se non stai facendo grafica pesante, allora l'esecuzione di MSVC in vmware o virtualbox va bene (se hai un sacco di ram), allora puoi avere admin nell'ambiente virtuale e la "loro" installazione è bloccata

    
risposta data 26.03.2011 - 16:26
fonte

Leggi altre domande sui tag