Enterprise:TeamA
Team A: Case Study
Contents
Team A: Case Study
Environment
- ~50,000 Desktops world-wide
- Windows Operating System
Browsers
Primary/Contingency enforced – seeking feature and management parity. Infrastructures are kept as separate as possible to reduce risk of vulnerabilities affecting all browsers
- Primary: Internet Explorer
- Secondary: Firefox
IE
Settings management with GPOs. ActiveX controls regulated via a Whitelist. Engineering team owns all engineering work around deploying and maintaining IE.
Firefox
Upgrade Strategy
- Security teams gauge risk to Firm from Security Notifications
- We Download latest source that addresses vulnerabilities
- Compile internally
- Swamp in some custom extensions
- Go through regular testing/deployment process
Settings Management: Mission Control
In-house, lightweight WebApp (service) is integrated with LDAP. Firefox encodes user's UID from ENV var and GET-requests settings from WebApp. WebApp looks up user privileges in LDAP and generates the .js settings file for the user's session on-the-fly. Default vs. Lock directives are based based on user's group memberships.
Benefits over GPO:
- Penetrates to laptops because sync down is over HTTP
- Is wired into Firefox startup mechanism. Locks are enforced at Firefox startup, every time.
- UI elements related to locked settings are also disabled.
- Mature mechanism since Netscape days
- No infrastructure overlap with IE - enforces "contingency" mentality.
Profile Management
- Control naming conventions for profiles, i.e. %username%_2.0.0.3ms1 for ease of support and engineering of support tools.
- Profiles are migrated and conventions enforced with in-house vb scripts that are compiled as custom actions into msi package.
- Enforce Firm-wide shortcuts and links
- Sanitize settings that may break MControl mechanism
- Enforce naming conventions for profiles
Addon Management
Extensions
- Users not allowed to download and install directly from addons.mozilla.org. All extensions are Wish-listed, reviewed by internal teams and "blessed" for release into internal repository.
- "Blessed" extensions are customized so that they pull updates from internal server. Process is painful but is largely automated with a comprehensive Shell scrip developed in-house (candidate for sharing! =) )
Plugins
- More rigorous approval process. Are deployed as part of package. Currently exploring how to deliver Plugins as Extensions (http://developer.mozilla.org/en/docs/Deploying_a_Plugin_as_an_Extension)
- Approved as extensions, supported ones are packaged internally
- Prefer to deploy plugins to a directory outside of Program Files/Firefox and to set paths in Windows Registry
- Application owner also owns the Plugin and is responsible for pushing out upgrades, i.e. Team that owns Windows Media Player also owns the WMP Plugins for Firefox
Deployment
- All installations and upgrades are pushed to the Desktop, ie SMS
- Preferred method for centrally managing configurations
- Mission Control
- Settings Management focus:
- Security-related/risky features - lockdown
- Performance related – lockdown/defaulted
- Usability - defaulted
minor version upgrade
Time to delivery: 1-2 months
- Week 1
- Compilation, configuration, engineering testing
- Week 2
- Packaging + Quality Control, Level 2/Service Testing
- Week 3
- Production pilot testing
- Production env management teams sign off
- Week 4
- Confidence levels to deploy
- Documentation, Knowledge transfer to support teams
Major version upgrade
Time to delivery: 3-6 months
- Compilation, configuration, engineering testing: 2 weeks
- Security architecture review: 2-3 weeks
- Developer/Engineering Pilot: 1-2 months
- Phased Pilot rollout/sign-offs: 1-2 months
- Documentation, Knowledge transfer to support teams: 2 weeks
Addons
- Extensions - 1 week turnaround, supported on best-effort basis (internal Mozilla community)
- Plugins - managed by the core engineering team as mentioned above
- Searchplugins - are standardized and released as part of package. Users may install additional search engines into their profiles
- Dictionaries - treated as extensions
- Themes - treated as "extensions with no business case", which means nobody has had the time to invest into making Themes available
Web Development
- Currently all Web Application *must* support IE. Firefox is treated as "contingency" browser with a small hand-full of business critical apps that do support it. Working hard to take Firefox support and penetration within the environment to the next level.
- Working with internal WebDev Governance teams to establish cross-browser best practices
- Focusing on business-critical applications first to require Firefox support