您如何处理开发人员对 Windows 服务器的访问?
当涉及到代码启动时,您如何处理开发人员对服务器的访问? 他们是否具有对计算机的 RDP 访问权限来部署代码并进行更改? 他们是否仅授予对服务器文档根目录的 ftps 访问权限,并且任何 .NET 配置更改均由系统管理员处理? 开发人员是否有权访问生产文档进行部署,或者系统管理员是否可以处理向实时服务器启动的任何代码?
When it comes to code launches how do you handle developer access to the server? Do they have RDP access to the machines to deploy code and make changes? Are they only given ftps access to the servers docroots and any .NET configuration changes are handled by the sysadmins? Do the developers even have access to the production docrooots for deployment or do the sysadmins handle any code launches to the live servers?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(6)
这取决于,在我们的工作场所,开发人员做所有事情。
没有系统管理员说什么(因为我是系统管理员和开发人员),
但糟糕的是,在实时环境中正在进行大量测试,我反对并试图阻止,但还没有运气。
我的最后一个工作场所也是由开发人员处理的,但是是分阶段进行的,在上线之前经历了很多阶段。
It depends, at our workplace the developers do everything.
No systemadministrator says anything (since i am the systemadmin and a developer)
Bad part though is, lots of testing is occuring on the live enviroment which i am against and trying to stop but no luck yet.
My last workplace it was handle also by developers but in stages, lots of stages before going live.
多年来我已经看到了其中的一些,到目前为止,当开发人员拥有完全访问权限时,最好的结果已经出现。 当然,所有更改仍应在版本控制中记录和提交,并在部署之前在测试系统上进行测试,等等。 让开发人员进入生产服务器的回报是当出现问题时。 开发人员是最能最快发现问题的人。 在受到严格限制的情况下,我发现关键的单行错误修复需要几天的时间才能部署。
I've seen some of each over the years, and by far the best results have emerged when the developers have full access. Of course, all changes should still be documented and committed in version control and tested on a test system before deployment, and all that. The payoff in letting the developers into the production servers is when things go wrong. The developers are the ones who can see through the problem the fastest. In situations with heavy restrictions, I've seen critical one-line bug-fixes take days to deploy.
我们使用多种方法。 对于我作为主要开发人员且托管在专用服务器(或虚拟机)上的应用程序,我可以完全访问 Web 服务器。 对于我仅开发较大应用程序的一部分或应用程序适合较大框架的应用程序,我可以访问可以发布的目录。 对于测试环境(或对新服务进行原型设计),通常是完全访问权限。 我有自己的专用 QA 盒子,我可以完全访问它来进行 QA 工作。 SQL 服务器的处理方式不同。 我在本地完整安装了用于开发的 SQL Server。 我通常与 DBA 交互,在测试和生产服务器上设置数据库,但对数据库拥有完全的管理访问权限,但对服务器没有。
We use a mix of approaches. For applications where I am the primary developer and it is hosted on a dedicated server (or VM) I have full access to the web server. For applications where I am only developing a piece of a larger application, or the application fits within a larger frame work I get access to a directory where I can publish. For testing environments (or prototyping new services), it is typically full access. I have my own dedicated QA box that I have full access to for QA work. SQL servers are handled differently. I have a full install of SQL server locally that I develop against. I typically interact with a DBA to get a database set up on testing and production servers, but have full administrative access to the database, but not the server.
我可以完全访问我公司的每台生产服务器。 但我们是一家非常小的公司,我做了很多系统管理工作以及所有开发工作。
I have full and complete access to every production server my company houses. But we are an extremely small company and I do a lot of the sysadmin work as well as all the development work.
我可以完全访问我们的大部分生产系统。 有很多问题对我来说比 IT 更容易解决。 不过,除非绝对必要,否则我通常不会对生产进行更改。 如果我确实做了更改,我会告诉我们的管理员,以便他们记录下来。 我们尝试过以有限的访问权限来做到这一点,但我是一个非常小的团队的一员,所以这不是一个选择。 现在,如果我们只授予管理员访问权限,那么 2 个人就必须解决生产问题。 这对于值班时间表来说是很困难的。
I have full access to most of our production systems. There are a lot of problems that are easier for me to resolve than for IT. Though usually I don't make change to production unless absolutely necessary. If I do make a change I tell our admins so they can make note of it. We've tried doing it with limited access, but I work as part of a really small team so it isn't an option. Right now if we only gave the admins access 2 people would have to cover production problems. That is difficult with an oncall schedule.
我使用过的最佳设置具有 3 级层次结构:
质量保证。
工程师接触这些。
这也取决于公司的预算和心态。
The best setups I have worked with has a 3 level hierarchy:
QA.
engineers touch these.
This will also depend on the company's budget and mindset.