Quyền Windows cho Nhà phát triển?


9

Tôi làm việc tại một công ty Fortune 500 với tư cách là nhà phát triển phần mềm Windows trong R & D. CNTT công ty hiện đang chuẩn bị triển khai Win7 cho toàn công ty và như một phần của nó, họ đang tìm cách khóa hoàn toàn quyền quản trị trên tất cả các hộp (bao gồm cả máy trạm dev của chúng tôi).

Tôi đã được giao nhiệm vụ làm việc với họ để giúp quá trình chuyển đổi diễn ra suôn sẻ nhất có thể. May mắn cho tôi

Tôi muốn biết liệu có bất kỳ tài nguyên nào được công bố hoặc được tôn trọng khác mà tôi có thể sử dụng để:

  1. Tìm ra nơi để vẽ một đường trên cát
  2. sao lưu vị trí của tôi

Cá nhân, tôi nghĩ rằng chúng tôi là R & D và công việc của chúng tôi là làm những việc "ngoài luồng". Vì vậy, chúng tôi cần quyền quản trị. Tuy nhiên, khi bắt đầu sự nghiệp với tư cách là Quản trị viên Windows, tôi nhận thức được mục tiêu của họ và những gì họ cần phải đạt được. Những gì tôi cần tìm ra và sao lưu là một cách để xây dựng môi trường theo cách mà cả CNTT và R & D có thể sống với nó và tiếp tục thực hiện công việc của họ một cách hiệu quả.

Phát triển VM với quyền quản trị cục bộ chắc chắn sẽ giúp ích rất nhiều, nhưng không phải trong mọi trường hợp vì chúng tôi giao tiếp với rất nhiều phần cứng tùy chỉnh.

CIO thúc đẩy những thay đổi này chắc chắn là một anh chàng 'IT thuần túy' với kiến ​​thức hạn chế về quá trình phát triển, vì vậy tôi cần một số tài liệu tham khảo phù hợp để chia sẻ với ai đó như thế.

Tôi không muốn thu thập nhiều ý kiến ​​cá nhân (rất nhiều ý kiến ​​đã được chia sẻ ở đây ), tôi thực sự cần các trang trắng, bài báo, tác phẩm học thuật, v.v. để sử dụng để đưa ra một trường hợp mạnh mẽ cho quản lý cấp trên.


1
Liên quan (nhưng không có tài liệu tham khảo nghiên cứu đó mà tôi có thể nhìn thấy): programmers.stackexchange.com/questions/4596/...
Adam Lear

Câu trả lời:


9

Vì bạn đang sử dụng Windows 7, bạn nên cố gắng trở thành quản trị viên trên các hộp của riêng mình. Có hai lý do thực sự tốt để giữ cho các nhà phát triển không phải là quản trị viên:

  • cùng một lý do bạn giữ cho mọi người khác không phải là quản trị viên, để phần mềm độc hại không làm những điều thực sự khủng khiếp nếu nó xảy ra để chạy
  • vì vậy họ sẽ không viết các ứng dụng chỉ hoạt động nếu bạn là quản trị viên

Với UAC, cả hai điều này đều không xảy ra, vì các ứng dụng bạn khởi chạy sẽ không chạy với tư cách quản trị viên trừ khi bạn cố tình yêu cầu họ làm như vậy. Do đó, có rất ít rủi ro để cho phép bạn có tài khoản quản trị viên.

Một số ông chủ có lý do thứ ba - Tôi không muốn bạn cài đặt trò chơi hoặc công cụ trái phép. Không thảo luận về giá trị của lý do này, tôi sẽ quan sát rằng nó thường không được nêu ra. Bạn cần quyền truy cập của quản trị viên để cài đặt nội dung bạn đang viết, để định cấu hình IIS, để cấu hình lại máy của bạn cho các loại thử nghiệm khác nhau (ví dụ: chỉnh sửa tệp máy chủ của bạn) và hai lý do "thực" để tránh quyền truy cập của quản trị viên không còn áp dụng cho Windows 7 Do đó, bạn nên là quản trị viên.


5

Thành thật tôi nghĩ rằng nó sẽ là một trường hợp khó khăn để thực hiện. Một khi quản lý cấp trên quyết định họ sẽ rất khó để khiến họ thay đổi. Nếu họ cho phép nhiều đặc quyền hơn trên máy của bạn, người khác có thể có thể truy cập và thực hiện các hành động mà toàn bộ kế hoạch này được thiết kế để ngăn chặn.

Đây có thể giúp:

PS: Chúc may mắn!


Cảm ơn vi đa trả lơi. Tôi nhận thức được các mục tiêu mà họ đang cố gắng thực hiện (Tôi bắt đầu sự nghiệp của mình trong Quản trị viên CNTT / Máy chủ). Điều tôi đang tìm kiếm là một cách để xây dựng một môi trường hạn chế nhất mà cả CNTT và R & D có thể sống và tiếp tục thực hiện công việc của họ.

Được nâng cấp vì liên kết đến serverfault - tôi đoán là OP chắc chắn có thể tìm thấy một số đối số cho trường hợp của mình ở đó.
Astrotrain

3

Một lựa chọn là yêu cầu các máy trạm thử nghiệm cho phép truy cập quản trị.

Một lựa chọn khác là làm chính xác như họ nói. Sau đó, khi dự án tiếp theo xuất hiện, bạn sẽ không đạt được tiến bộ nào vì bạn phải đến CNTT cho mỗi thay đổi nhỏ. Giải thích điều này cho người lãnh đạo dự án và anh ta sẽ sắp xếp quyền quản trị một cách nhanh chóng.

Tùy chọn thứ ba là kiểm tra xem bộ phận của bạn có được đại diện trong dự án di chuyển Win7 hay không. Nếu có, hãy liên hệ với đại diện của bạn và hỏi xem anh ấy có thể thêm quyền quản trị vào danh sách yêu cầu của bộ phận bạn không.

Một lựa chọn thứ tư là giao dịch. Dự án di chuyển thường cần phát triển để cập nhật phần mềm của họ cho Win7. Có thể đưa ra thái độ ủng hộ quyền quản trị viên trong môi trường mới.


3
Không hoạt động - điều đó chỉ có nghĩa là bạn phải thực hiện công việc của mình mà không cần những thứ như trình gỡ lỗi và đó là lỗi của bạn vì bị chậm
Martin Beckett

1
@Martin Beckett: Vâng, các đồng nghiệp ở tầng dưới đã gặp vấn đề này. Họ đã tiếp cận phương pháp PM và PM sắp xếp cho quản trị viên địa phương, máy tính xách tay nhanh hơn và màn hình lớn hơn.
Andomar

Phụ thuộc vào người thực thi chính sách không có quản trị viên và mức độ nghiêm ngặt của họ. Nếu (như trong trường hợp ở đây) là CIO và anh ta không xuất thân từ nền tảng phát triển, sẽ tốt hơn nếu đưa ra trường hợp nên có ngoại lệ, thay vì cho rằng bạn có thể lấy một cái.
David Thornley

3

Tôi không thể tưởng tượng việc cố gắng phát triển mà không phải là quản trị viên cục bộ, tuy nhiên tôi nghĩ rằng nhu cầu sẽ thay đổi tùy thuộc vào nhiệm vụ phát triển và cách tiêu chuẩn hóa quy trình phát triển và chuỗi công cụ tại nơi làm việc của bạn.

Từ kinh nghiệm của tôi, thường có những nhân viên phát triển cao cấp sẽ cần cài đặt các công cụ dev khác nhau (đôi khi vào giờ lẻ) để nhanh chóng tạo nguyên mẫu hoặc khắc phục một số vấn đề quan trọng. Họ gần như chắc chắn cần quyền truy cập quản trị viên cục bộ để cài đặt, gỡ lỗi, làm việc với các dịch vụ, v.v.

Các nhân viên còn lại có thể có được mà không cần nó, nếu bộ công cụ của bạn khá ổn định và tùy thuộc vào những gì họ phát triển / gỡ lỗi / triển khai. Đề nghị của tôi là tập hợp một nhóm nhỏ các nhân viên phát triển cấp cao nhất của bạn lại với nhau, giải thích vấn đề và các lựa chọn của họ, và họ sẽ mất vài ngày để xem xét và sau đó có một cuộc họp lập kế hoạch để xác định loại quyền truy cập nào nhân viên nên có.


3

Từ góc độ CNTT thuần túy và quan điểm phát triển, nhiều công ty giải quyết vấn đề theo cách này:

Đặt tất cả các hộp phát triển trên một mạng riêng biệt. Mạng phát triển có thể bị cô lập hoàn toàn (không có internet và không có mạng nội bộ). Trong trường hợp này, các nhà phát triển có một hộp công ty riêng biệt được sử dụng cho email và liên lạc chính thức - tức là truy cập vào cả internet và mạng nội bộ. Giải pháp này có những thách thức riêng vì các IDE nhất định (như Eclipse) và các công cụ phát triển khác giả định rằng bạn có kết nối trực tiếp với internet để nhận các bản cập nhật và plugin. Tuy nhiên, phần lớn các công cụ phát triển đều biết rằng các mạng bị cô lập tồn tại.

Một biến thể khác của phương pháp này là có mạng dev trên mạng con. Bạn có quyền truy cập gián tiếp vào internet và mạng nội bộ thông qua tường lửa DMZ nghiêm ngặt, nhưng vẫn có các nhà phát triển có quyền truy cập quản trị viên cục bộ.


1
+1 để phân tách, đối xử với nhà phát triển như người dùng từ xa và nó có xu hướng làm hỏng CNTT công ty khá tốt.
Wyatt Barnett

"không có internet", ý bạn là họ không được phép sử dụng Stackoverflow trên máy dev của họ?!
mbx

Chính xác. Các máy riêng biệt dành cho internet và phát triển
Berin Loritsch

1

Xem xét cung cấp cho các nhà phát triển hai tài khoản.

Đầu tiên là một tài khoản người dùng không có đặc quyền bình thường, là tài khoản được sử dụng cho tất cả các công việc hàng ngày (bao gồm cả phát triển phần mềm). Cái còn lại là tài khoản quản trị viên cục bộ, chỉ có đặc quyền quản trị viên trên các máy cụ thể. Nó chỉ cần thiết khi thực sự cài đặt công cụ hoặc điều chỉnh cài đặt máy.

Đảm bảo rằng các dịch vụ hàng ngày như máy chủ proxy internet, email, v.v chỉ nhận ra tài khoản bình thường, vì vậy các nhà phát triển không thể chỉ sử dụng quản trị viên cục bộ mọi lúc. Bất cứ khi nào đặc quyền quản trị viên được yêu cầu, UAC sẽ bật lên và cung cấp cho nhà phát triển cơ hội nhập chi tiết đăng nhập quản trị viên cục bộ của họ để tiếp tục.


đây là những gì tôi đã nhận được trong công việc của mình và nó hoạt động khá tốt + 1
Rémi

1

Phát triển phần mềm là một con thú cơ bản khác với mọi cách sử dụng máy tính khác, và nó phải được xử lý như vậy.

Khả năng viết mã của riêng bạn và quan trọng hơn là theo dõi quá trình thực thi mã của bạn khi gỡ lỗi, yêu cầu bạn phải có quyền trên máy tính của mình, trong bất kỳ bối cảnh nào khác, sẽ gây rủi ro lớn cho bảo mật cục bộ. Rephrased ở dạng cắn âm thanh:

Quyền cần thiết cho phát triển phần mềm không phù hợp với người dùng thông thường.

Để hoàn thành công việc của bạn, bạn cần phải là quản trị viên địa phương. Nhưng bằng cách là quản trị viên cục bộ và phá vỡ chính sách bảo mật, về mặt lý thuyết, bạn có thể gây rủi ro cho phần còn lại của mạng. Vì vậy, mối quan tâm đó cần phải được giải quyết là tốt. Cách các công ty quan trọng về bảo mật giải quyết vấn đề này là bằng cách áp đặt hai quy tắc đơn giản:

  1. Lập trình viên là quản trị viên truy cập cục bộ trên máy phát triển của họ.
  2. Máy phát triển không được kết nối với mạng công ty.

Làm thế nào quy tắc thứ hai diễn ra là tùy thuộc vào bộ phận CNTT. Đôi khi, máy phát triển được cách ly riêng mà không có mạng vào hoặc ra (được thấy trong một số nhà thầu Quốc phòng) và đôi khi máy được kết nối với mạng "Khách" hoặc "DMZ" để cho phép truy cập Internet (tải xuống các bản vá, truy cập tài liệu , v.v.) mà không đặt mạng công ty vào rủi ro không đáng có.

Bây giờ, bạn sẽ tìm thấy một số nguồn chính thức về điều này? Tôi đoán điều đó phụ thuộc vào người mà bạn xem là chính thức . Ý kiến ​​về vấn đề này về cơ bản là nhất trí. Nhưng nó được hiểu rõ đến mức nó hiếm khi được nêu. Nó giống như hỏi: " Xe của tôi có nên đỗ xe không? " Bạn sẽ không tìm thấy các nguồn có thẩm quyền nói ra khỏi chủ đề bởi vì họ có những điều tốt hơn để làm và mọi người đều biết câu trả lời đó.


0

Bạn có thể sử dụng một môi trường ảo?

Nếu bạn không làm đồ họa nặng thì chạy MSVC trong vmware hoặc virtualbox vẫn ổn (nếu bạn có nhiều ram) thì bạn có thể có quản trị viên trong môi trường ảo và cài đặt 'của họ' bị khóa


2
Điều ngược lại có thể hoạt động tốt hơn: sử dụng nơi làm việc của công ty trong môi trường ảo. CNTT công ty thường cung cấp điều này cho các nhà quản lý và bạn chỉ sử dụng nó để đọc và gửi email.
Andomar

có nhưng nếu vấn đề không cho phép bạn có quyền quản trị để chạy trình gỡ lỗi hoặc cài đặt thử nghiệm không giúp ích gì
Martin Beckett

Vâng, ý tưởng là máy chủ ảo có trên corpnet, nhưng bạn thì không. Vì vậy, bạn có thể là quản trị viên địa phương
Andomar
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.