Visual Studio Whidbey: Deploying Applications Using ClickOnce Sean Draine Program Manager Microsoft...
-
Upload
leonard-miller -
Category
Documents
-
view
217 -
download
0
Transcript of Visual Studio Whidbey: Deploying Applications Using ClickOnce Sean Draine Program Manager Microsoft...
![Page 1: Visual Studio Whidbey: Deploying Applications Using ClickOnce Sean Draine Program Manager Microsoft Corporation Sean Draine Program Manager Microsoft Corporation.](https://reader035.fdocuments.us/reader035/viewer/2022062715/56649da35503460f94a8feaa/html5/thumbnails/1.jpg)
Visual Studio Whidbey: Deploying Applications Using ClickOnce
Sean DraineProgram ManagerMicrosoft Corporation
Session Code: TLS344
![Page 2: Visual Studio Whidbey: Deploying Applications Using ClickOnce Sean Draine Program Manager Microsoft Corporation Sean Draine Program Manager Microsoft Corporation.](https://reader035.fdocuments.us/reader035/viewer/2022062715/56649da35503460f94a8feaa/html5/thumbnails/2.jpg)
AgendaAgenda
ClickOnce Design GoalsDemo: ClickOnce end to endSigning and SecurityDemo: Targeting the sandboxBootstrapping prerequisite componentsDemo: Component BootstrapperSummary
ClickOnce Design GoalsDemo: ClickOnce end to endSigning and SecurityDemo: Targeting the sandboxBootstrapping prerequisite componentsDemo: Component BootstrapperSummary
![Page 3: Visual Studio Whidbey: Deploying Applications Using ClickOnce Sean Draine Program Manager Microsoft Corporation Sean Draine Program Manager Microsoft Corporation.](https://reader035.fdocuments.us/reader035/viewer/2022062715/56649da35503460f94a8feaa/html5/thumbnails/3.jpg)
ClickOnce VisionClickOnce Vision
Bring the ease & reliability of web application deployment to client applications.
Bring the ease & reliability of web application deployment to client applications.
![Page 4: Visual Studio Whidbey: Deploying Applications Using ClickOnce Sean Draine Program Manager Microsoft Corporation Sean Draine Program Manager Microsoft Corporation.](https://reader035.fdocuments.us/reader035/viewer/2022062715/56649da35503460f94a8feaa/html5/thumbnails/4.jpg)
ClickOnce Design GoalsClickOnce Design Goals
Safety of Web applicationsApplication isolation
Easy to installNo large infrastructure investment Apps can be installed by User
Easy to updateApp automatically detects and applies updates
Safety of Web applicationsApplication isolation
Easy to installNo large infrastructure investment Apps can be installed by User
Easy to updateApp automatically detects and applies updates
![Page 5: Visual Studio Whidbey: Deploying Applications Using ClickOnce Sean Draine Program Manager Microsoft Corporation Sean Draine Program Manager Microsoft Corporation.](https://reader035.fdocuments.us/reader035/viewer/2022062715/56649da35503460f94a8feaa/html5/thumbnails/5.jpg)
Web or Rich Client?Web or Rich Client?
Web clientPortals, search engines, documents, simple formsReach desktops without .NET Framework
ClickOnce rich clientRich user experience
Leverage Windows controls and standardsDrag/drop, right-click, keyboard shortcuts, etc.Reduce network round trips
Offline supportWindows shell integration
Web clientPortals, search engines, documents, simple formsReach desktops without .NET Framework
ClickOnce rich clientRich user experience
Leverage Windows controls and standardsDrag/drop, right-click, keyboard shortcuts, etc.Reduce network round trips
Offline supportWindows shell integration
![Page 6: Visual Studio Whidbey: Deploying Applications Using ClickOnce Sean Draine Program Manager Microsoft Corporation Sean Draine Program Manager Microsoft Corporation.](https://reader035.fdocuments.us/reader035/viewer/2022062715/56649da35503460f94a8feaa/html5/thumbnails/6.jpg)
The Best of the Client & WebThe Best of the Client & Web
Web ClickOnce
MSI Client
Reach Y
No Touch Deployment Y Y
Low System Impact Y Y
Install/Run Per-User Y Y
Rich / Interactive Y Y
Offline Y Y
Windows Shell Integration Y Y
Per-Machine/Shared Components
Y
Unrestricted Install Y
![Page 7: Visual Studio Whidbey: Deploying Applications Using ClickOnce Sean Draine Program Manager Microsoft Corporation Sean Draine Program Manager Microsoft Corporation.](https://reader035.fdocuments.us/reader035/viewer/2022062715/56649da35503460f94a8feaa/html5/thumbnails/7.jpg)
ClickOnce End to End
Sean DraineProgram ManagerMicrosoft Corporation
![Page 8: Visual Studio Whidbey: Deploying Applications Using ClickOnce Sean Draine Program Manager Microsoft Corporation Sean Draine Program Manager Microsoft Corporation.](https://reader035.fdocuments.us/reader035/viewer/2022062715/56649da35503460f94a8feaa/html5/thumbnails/8.jpg)
Code Access SecurityCode Access Security
ClickOnce apps default to partial trust
Permissions based on origin
Internet, Intranet, or full trust (local)
Apps may need more permission
Call unmanaged code (e.g., export to Excel)
Access file system
Connect to database or Web server
ClickOnce apps default to partial trust
Permissions based on origin
Internet, Intranet, or full trust (local)
Apps may need more permission
Call unmanaged code (e.g., export to Excel)
Access file system
Connect to database or Web server
![Page 9: Visual Studio Whidbey: Deploying Applications Using ClickOnce Sean Draine Program Manager Microsoft Corporation Sean Draine Program Manager Microsoft Corporation.](https://reader035.fdocuments.us/reader035/viewer/2022062715/56649da35503460f94a8feaa/html5/thumbnails/9.jpg)
Elevating Trust via PolicyImproved Policy ModelElevating Trust via PolicyImproved Policy Model
Establish deployment authority
Requires one time ever client deployment
Trust licenses
Issued by authority, deployed with app
Included in deployment manifest
Trust can be scoped
Application
Author (public key token)
Establish deployment authority
Requires one time ever client deployment
Trust licenses
Issued by authority, deployed with app
Included in deployment manifest
Trust can be scoped
Application
Author (public key token)
![Page 10: Visual Studio Whidbey: Deploying Applications Using ClickOnce Sean Draine Program Manager Microsoft Corporation Sean Draine Program Manager Microsoft Corporation.](https://reader035.fdocuments.us/reader035/viewer/2022062715/56649da35503460f94a8feaa/html5/thumbnails/10.jpg)
Elevating Trust via PromptingElevating Trust via Prompting
Useful for targeting “PC in the wild” Internet or unmanaged Intranet User is the admin
App requests required permissionsUser prompted if:
App needs permissions above the sandboxInternet applications must be Authenticode signed
Admin can disable prompting through policy
Useful for targeting “PC in the wild” Internet or unmanaged Intranet User is the admin
App requests required permissionsUser prompted if:
App needs permissions above the sandboxInternet applications must be Authenticode signed
Admin can disable prompting through policy
![Page 11: Visual Studio Whidbey: Deploying Applications Using ClickOnce Sean Draine Program Manager Microsoft Corporation Sean Draine Program Manager Microsoft Corporation.](https://reader035.fdocuments.us/reader035/viewer/2022062715/56649da35503460f94a8feaa/html5/thumbnails/11.jpg)
Targeting the SandboxTargeting the Sandbox
Debug In SandboxDebug applications in partial trustException Assistant
Intellisense In SandboxFiltered based on securitycontext
Permission CalculatorCalculates least required permissions
Debug In SandboxDebug applications in partial trustException Assistant
Intellisense In SandboxFiltered based on securitycontext
Permission CalculatorCalculates least required permissions
![Page 12: Visual Studio Whidbey: Deploying Applications Using ClickOnce Sean Draine Program Manager Microsoft Corporation Sean Draine Program Manager Microsoft Corporation.](https://reader035.fdocuments.us/reader035/viewer/2022062715/56649da35503460f94a8feaa/html5/thumbnails/12.jpg)
Strong name signingStrong name signingClickOnce manifests must be signed
Security: ensures updates came from original authorEnsures unique app identity
Authenticode signing required for elevated trust on Internet
ClickOnce manifests must be signedSecurity: ensures updates came from original authorEnsures unique app identity
Authenticode signing required for elevated trust on Internet
![Page 13: Visual Studio Whidbey: Deploying Applications Using ClickOnce Sean Draine Program Manager Microsoft Corporation Sean Draine Program Manager Microsoft Corporation.](https://reader035.fdocuments.us/reader035/viewer/2022062715/56649da35503460f94a8feaa/html5/thumbnails/13.jpg)
VS Signing SupportLarge ISVs and EnterpriseVS Signing SupportLarge ISVs and Enterprise
Private keys worth $$$Signing in development environment
Delay signingSign with temporary key
Signing production bitsPrivate key in lockboxAccessible to build lab only
Private keys worth $$$Signing in development environment
Delay signingSign with temporary key
Signing production bitsPrivate key in lockboxAccessible to build lab only
![Page 14: Visual Studio Whidbey: Deploying Applications Using ClickOnce Sean Draine Program Manager Microsoft Corporation Sean Draine Program Manager Microsoft Corporation.](https://reader035.fdocuments.us/reader035/viewer/2022062715/56649da35503460f94a8feaa/html5/thumbnails/14.jpg)
VS Signing SupportDepartmental, small business, hobbyist
VS Signing SupportDepartmental, small business, hobbyist
Need easy, inexpensive, secure process
Lockbox is overkill
Keys must be portable and shareable
Hard-drive crashes, computer upgrade, small teams
Solution: Password-encrypted key files
Uses PKCS-12 standard formatKey file lives in projectShareable through SCCEnter password once per machine
Need easy, inexpensive, secure process
Lockbox is overkill
Keys must be portable and shareable
Hard-drive crashes, computer upgrade, small teams
Solution: Password-encrypted key files
Uses PKCS-12 standard formatKey file lives in projectShareable through SCCEnter password once per machine
![Page 15: Visual Studio Whidbey: Deploying Applications Using ClickOnce Sean Draine Program Manager Microsoft Corporation Sean Draine Program Manager Microsoft Corporation.](https://reader035.fdocuments.us/reader035/viewer/2022062715/56649da35503460f94a8feaa/html5/thumbnails/15.jpg)
Security and Signing in VS
Sean DraineProgram ManagerMicrosoft Corporation
![Page 16: Visual Studio Whidbey: Deploying Applications Using ClickOnce Sean Draine Program Manager Microsoft Corporation Sean Draine Program Manager Microsoft Corporation.](https://reader035.fdocuments.us/reader035/viewer/2022062715/56649da35503460f94a8feaa/html5/thumbnails/16.jpg)
.NET Framework Deployment.NET Framework Deployment
Managed NetworksDesktops locked down Push technologies
SMS, Intellimirror, Imaging
Unmanaged PCsUser is the admin Component Bootstrapper
FX installed as part of app setup
Managed NetworksDesktops locked down Push technologies
SMS, Intellimirror, Imaging
Unmanaged PCsUser is the admin Component Bootstrapper
FX installed as part of app setup
![Page 17: Visual Studio Whidbey: Deploying Applications Using ClickOnce Sean Draine Program Manager Microsoft Corporation Sean Draine Program Manager Microsoft Corporation.](https://reader035.fdocuments.us/reader035/viewer/2022062715/56649da35503460f94a8feaa/html5/thumbnails/17.jpg)
Component BootstrapperComponent Bootstrapper
Lightweight setup.exe Detects prerequisitesDownloads/installs as needed
Web or disk installationsManages rebootsSupports any msi or exe installer
Out of the box.NET FX, MDAC 9, MSDE, J#, & MSI 2.0
Fully extensible for other components
Lightweight setup.exe Detects prerequisitesDownloads/installs as needed
Web or disk installationsManages rebootsSupports any msi or exe installer
Out of the box.NET FX, MDAC 9, MSDE, J#, & MSI 2.0
Fully extensible for other components
![Page 18: Visual Studio Whidbey: Deploying Applications Using ClickOnce Sean Draine Program Manager Microsoft Corporation Sean Draine Program Manager Microsoft Corporation.](https://reader035.fdocuments.us/reader035/viewer/2022062715/56649da35503460f94a8feaa/html5/thumbnails/18.jpg)
Bootstrapper in actionBootstrapper in action
Setup.exeSetup.exe
Dotnetfx.exeDotnetfx.exe
Web ServerWeb Server
Mdac_typ.exeMdac_typ.exe
Foo.msiFoo.msi
App.deployApp.deploy
WebWeb
RebootReboot
Client PCClient PCDotnetfx.exeDotnetfx.exe
Foo.msiFoo.msi
App.deployApp.deploy MDAC detected!MDAC detected!
Setup.exeSetup.exe
![Page 19: Visual Studio Whidbey: Deploying Applications Using ClickOnce Sean Draine Program Manager Microsoft Corporation Sean Draine Program Manager Microsoft Corporation.](https://reader035.fdocuments.us/reader035/viewer/2022062715/56649da35503460f94a8feaa/html5/thumbnails/19.jpg)
Bootstrapping Custom Components
Sean DraineProgram ManagerMicrosoft Corporation
![Page 20: Visual Studio Whidbey: Deploying Applications Using ClickOnce Sean Draine Program Manager Microsoft Corporation Sean Draine Program Manager Microsoft Corporation.](https://reader035.fdocuments.us/reader035/viewer/2022062715/56649da35503460f94a8feaa/html5/thumbnails/20.jpg)
SummarySummary
ClickOnce makes rich client deployment easy and safeComponent Bootstrapper allows easy redistribution of prerequisitesVS makes ClickOnce deployment easy
ClickOnce makes rich client deployment easy and safeComponent Bootstrapper allows easy redistribution of prerequisitesVS makes ClickOnce deployment easy
![Page 21: Visual Studio Whidbey: Deploying Applications Using ClickOnce Sean Draine Program Manager Microsoft Corporation Sean Draine Program Manager Microsoft Corporation.](https://reader035.fdocuments.us/reader035/viewer/2022062715/56649da35503460f94a8feaa/html5/thumbnails/21.jpg)
Additional ResourcesAdditional Resources
Related sessionsSession CLI371: Longhorn MSI enhancements (Room and time)Session CLI400: Advanced topics in web based deployment (Room and time)
Other resourcesHands on Lab 604
Related sessionsSession CLI371: Longhorn MSI enhancements (Room and time)Session CLI400: Advanced topics in web based deployment (Room and time)
Other resourcesHands on Lab 604
![Page 22: Visual Studio Whidbey: Deploying Applications Using ClickOnce Sean Draine Program Manager Microsoft Corporation Sean Draine Program Manager Microsoft Corporation.](https://reader035.fdocuments.us/reader035/viewer/2022062715/56649da35503460f94a8feaa/html5/thumbnails/22.jpg)
© 2003-2004 Microsoft Corporation. All rights reserved.This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.
![Page 23: Visual Studio Whidbey: Deploying Applications Using ClickOnce Sean Draine Program Manager Microsoft Corporation Sean Draine Program Manager Microsoft Corporation.](https://reader035.fdocuments.us/reader035/viewer/2022062715/56649da35503460f94a8feaa/html5/thumbnails/23.jpg)