ArcGIS Server: Web Administration Using the Microsoft.NET Framework
All rights reserved. Course version 1.2. Revised June 2008. Printed in the United States of America. The information contained in this document is the exclusive property of ESRI. This work is protected under United States copyright law and other international copyright treaties and conventions. No part of this work may be reproduced or transmitted in any form or by any means, electronic or mechanical, including photocopying and recording, or by any information storage or retrieval system, except as expressly permitted in writing by ESRI. All requests should be sent to Attention: Contracts and Legal Services Manager, ESRI, 380 New York Street, Redlands, CA 92373-8100 USA. The information contained in this document is subject to change without notice. U. S. GOVERNMENT RESTRICTED/LIMITED RIGHTS Any software, documentation, and/or data delivered hereunder is subject to the terms of the License Agreement. In no event shall the U.S. Government acquire greater than RESTRICTED/LIMITED RIGHTS. At a minimum, use, duplication, or disclosure by the U.S. Government is subject to restrictions as set forth in FAR 52.227-14 Alternates I, II, and III (JUN 1987); FAR 52.227-19 (JUN 1987) and/or FAR 12.211/12.212 (Commercial Technical Data/Computer Software); and DFARS 252.227-7015 (NOV 1995) (Technical Data) and/or DFARS 227.7202 (Computer Software), as applicable. Contractor/Manufacturer is ESRI, 380 New York Street, Redlands, CA 92373-8100 USA. @esri.com, 3D Analyst, ACORN, ADF, AML, ArcAtlas, ArcCAD, ArcCatalog, ArcCOGO, ArcData, ArcDoc, ArcEdit, ArcEditor, ArcEurope, ArcExplorer, ArcExpress, ArcGIS, ArcGlobe, ArcGrid, ArcIMS, ARC/INFO, ArcInfo, ArcInfo Librarian, ArcInfo Professional GIS, ArcInfo The World's GIS, ArcLessons, ArcLocation, ArcLogistics, ArcMap, ArcNetwork, ArcNews, ArcObjects, ArcOpen, ArcPad, ArcPlot, ArcPress, ArcQuest, ArcReader, ArcScan, ArcScene, ArcSchool, ArcScripts, ArcSDE, ArcSdl, ArcSketch, ArcStorm, ArcSurvey, ArcTIN, ArcToolbox, ArcTools, ArcUSA, ArcUser, ArcView, ArcVoyager, ArcWatch, ArcWeb, ArcWorld, ArcXML, Atlas GIS, AtlasWare, Avenue, Business Analyst Online, BusinessMAP, Community, CommunityInfo, Data Automation Kit, Database Integrator, DBI Kit, EDN, ESRI, ESRI BIS, ESRI Team GIS, ESRI The GIS Company, ESRI The GIS People, ESRI The GIS Software Leader, FormEdit, GeoCollector, Geographic Design System, Geography Matters, Geography Network, GIS by ESRI, GIS Data ReViewer, GIS Day, GIS for Everyone, GISData Server, JTX, MapBeans, MapCafé, MapData, MapObjects, Maplex, MapStudio, ModelBuilder, MOLE, MPS-Atlas, NetEngine, PC ARC/INFO, PC ARCPLOT, PC ARCSHELL, PC DATA CONVERSION, PC STARTER KIT, PC TABLES, PC ARCEDIT, PC NETWORK, PC OVERLAY, PLTS, Rent-a-Tech, RouteMAP, SDE, Site Reporter, SML, Sourcebook America, Spatial Database Engine, StreetEditor, StreetMap, Tapestry, the ARC/INFO logo, the ArcAtlas logo, the ArcCAD logo, the ArcCAD WorkBench logo, the ArcCOGO logo, the ArcData logo, the ArcData Online logo, the ArcEdit logo, the ArcEurope logo, the ArcExplorer logo, the ArcExpress logo, the ArcGIS logo, the ArcGIS Explorer logo, the ArcGrid logo, the ArcIMS logo, the ArcInfo logo, the ArcLogistics Route logo, the ArcNetwork logo, the ArcPad logo, the ArcPlot logo, the ArcPress for ArcView logo, the ArcPress logo, the ArcScan logo, the ArcScene logo, the ArcSDE CAD Client logo, the ArcSDE logo, the ArcStorm logo, the ArcTIN logo, the ArcTools logo, the ArcUSA logo, the ArcView 3D Analyst logo, the ArcView Data Publisher logo, the ArcView GIS logo, the ArcView Image Analysis logo, the ArcView Internet Map Server logo, the ArcView logo, the ArcView Network Analyst logo, the ArcView Spatial Analyst logo, the ArcView StreetMap 2000 logo, the ArcView StreetMap logo, the ArcView Tracking Analyst logo, the ArcWorld logo, the Atlas GIS logo, the Avenue logo, the BusinessMAP logo, the Community logo, the Data Automation Kit logo, the Digital Chart of the World logo, the ESRI Data logo, the ESRI globe logo, the ESRI Press logo, the Geography Network logo, the MapCafé logo, the MapObjects Internet Map Server logo, the MapObjects logo, the MOLE logo, the NetEngine logo, the PC ARC/INFO logo, the Production Line Tool Set logo, the RouteMAP IMS logo, the RouteMAP logo, the SDE logo, The Geographic Advantage, The World's Leading Desktop GIS, Water Writes, www.esri.com, www.esribis.com, www.geographynetwork.com, www.gis.com, www.gisday.com, and Your Personal Geographic Information System are trademarks, registered trademarks, or service marks of ESRI in the United States, the European Community, or certain other jurisdictions. Other companies and products mentioned herein may be trademarks or registered trademarks of their respective trademark owners.
C O N T E N T S 1 2 3 Introduction Welcome to ArcGIS Server: Web Administration using the Microsoft.NET Framework 1-1 Course objectives 1-2 Day 1 course content 1-3 Day 2 course content 1-4 Day 3 course content 1-5 Classroom configuration 1-6 Course materials 1-7 Additional resources 1-8 ESRI Developer Network 1-9 ESRI Support Center 1-10 ArcGIS: A complete GIS 1-11 Logistics 1-12 Introductions 1-13 Exercise goals 1-14 Installing ArcGIS Server Installing ArcGIS Server 2-1 Learning objectives 2-2 Understanding the installations 2-3 ArcGIS Server install components 2-4 GIS server components 2-5 GIS server accounts 2-6 GIS server account resource access 2-7 Server directories 2-8 ArcGIS Server requests 2-9 Local access to the GIS server 2-10 Distributed Component Object Model (DCOM) 2-11 Web server install components 2-12 Web application's post install 2-13 Components of an ArcGIS Server instance 2-14 Web service access to ArcGIS Server 2-15 Logging in to ArcGIS Server Manager 2-16 Installation scenarios 2-17 Update or uninstall ArcGIS Server 2-18 Exercise goals 2-19 Lesson review 2-20 Managing ArcGIS Server data Managing ArcGIS Server data 3-1 i
ArcGIS Server: Web Administration Using the Microsoft.NET Framework Contents 4 5 Learning objectives 3-2 Services and resources 3-3 Data access 3-4 ArcGISSOC accesses GIS data and resources 3-5 Access file-based data and resources 3-6 Using a file server 3-7 Access multi-user geodatabase data 3-8 Access image services 3-9 Best practices for publishing resources 3-10 Resource and data modifications 3-11 Updating published data 3-12 Workflow for updating published data 3-13 Workflow for synchronizing over HTTP 3-14 Automated workflows 3-15 Exercise goals 3-16 Lesson review 3-17 Optimizing services Optimizing services 4-1 Learning objectives 4-2 Map creation 4-3 Improve request response time 4-4 Managing server and service properties 4-5 Configuring service properties 4-6 Consuming service instances 4-7 Pooling instances 4-8 Isolation of pooled services 4-9 Recycling 4-10 Maximize service availability and usability 4-11 Server capacity 4-12 Pool shrinking 4-13 Image output format 4-14 Image output location 4-15 Exercise goals 4-16 Lesson review 4-17 Troubleshooting ArcGIS Server Troubleshooting ArcGIS Server 5-1 Learning objectives 5-2 Internet connections unavailable 5-3 Access to output directory is denied 5-4 Map image not available in ArcGIS Desktop 5-5 No map image generated 5-6 Using server logs 5-7 ii
Contents 6 7 Log events 5-8 Inspecting service processes 5-9 Monitoring server statistics 5-10 Monitoring HTTP traffic in Internet Explorer 5-11 Monitoring HTTP traffic in FireFox 5-12 Exercise goals 5-13 Lesson review 5-14 Cached map service fundamentals Cached map service fundamentals 6-1 Learning objectives 6-2 Caching basics 6-3 Cached map service access 6-4 Designing maps for caching 6-5 Cache option 1: Fused 6-6 Cache option 2: Multi-layer 6-7 Tiling scheme 6-8 Defining your own tiling scheme 6-9 Tiling scheme origin 6-10 Tile size 6-11 Choosing output image type 6-12 Anti-aliasing 6-13 Creating a cache for a mashup 6-14 Exercise goals 6-15 Lesson review 6-16 Cached map service workflows Cached map service workflows 7-1 Learning objectives 7-2 Organizing multiple map services 7-3 Controlling scale levels for multiple services 7-4 Overlay cache tiling scheme: Web ADF 7-5 Overlay cache tiling schemes: JavaScript APIs 7-6 Web-tier blending 7-7 Browser blending 7-8 Basic caching scenarios 7-9 Caching high-traffic areas 7-10 Pre-creating a very large cache 7-11 Updating a cache 7-12 Updating by feature class 7-13 Update cache where features have been edited 7-14 Moving and deleting a cache 7-15 Creating a sample cache 7-16 Cache estimation 7-17 iii
ArcGIS Server: Web Administration Using the Microsoft.NET Framework Contents 8 9 10 Exercise goals 7-18 Lesson review 7-19 Securing Web applications Securing Web applications 8-1 Learning objectives 8-2 Security overview 8-3 Authenticating users 8-4 Windows users and roles 8-5 IIS authentication methods 8-6 SQL and custom users and roles storage 8-7 SQL Server special roles 8-8 Authorizing Web application access 8-9 Establishing Web application security 8-10 Configure IIS security 8-11 Encrypt communication of user credentials 8-12 Exercise goals 8-13 Lesson review 8-14 Securing Web services Securing Web services 9-1 Learning objectives 9-2 Web service clients 9-3 Establishing Web service security 9-4 Web service security using Windows 9-5 Using a token service 9-6 Web service security using the token service 9-7 Token service security 9-8 Permissions for folders and services 9-9 Securing server directories 9-10 Securing cached services: SQL/Custom 9-11 Securing cached services: Windows 9-12 Securing cached services: local connections 9-13 Enable service security 9-14 Migrate security from ArcGIS Server 9.2 9-15 Exercise review 9-16 Lesson review 9-17 Configuring geoprocessing services Configuring geoprocessing services 10-1 Learning objectives 10-2 Why publish geoprocessing services? 10-3 Properties of a geoprocessing service 10-4 iv
Contents 11 12 Resources 10-5 Presentation of results 10-6 Directories for geoprocessing 10-7 Lifetime of an asynchronous request 10-8 Lifetime of a synchronous request 10-9 Methods for authoring your model 10-10 Reading data 10-11 Writing data to the GIS server 10-12 Writing data in an authoring environment 10-13 Parameter restrictions 10-14 Model settings to support performance 10-15 Workflows to support performance 10-16 Exercise goals 10-17 Lesson review 10-18 Configuring a production ArcGIS Server system Configuring a production ArcGIS Server system 11-1 Learning objectives 11-2 Configuring a production system 11-3 Common configurations 11-4 Single-tier ArcGIS Server configuration 11-5 Two-tier ArcGIS Server configuration 11-6 Three-tier ArcGIS Server configuration 11-7 Setting up a three-tier configuration 11-8 Configuring multiple SOC machines 11-9 Geoprocessing services on multiple SOCs 11-10 High availability using SOM 11-11 Configuring a production system 11-12 Using a development server 11-13 Moving services to production server 11-14 Configuring application identity 11-15 Configuring a production system 11-16 Reduce Web service authentication requests 11-17 Optimizing Web applications 11-18 Exercise goals 11-19 Lesson review 11-20 Setting up ArcGIS Server for the Internet Setting up ArcGIS Server for the Internet 12-1 Learning objectives 12-2 Firewalls 12-3 Demilitarized Zone (DMZ) 12-4 Proxy servers 12-5 Reverse proxy servers 12-6 v
ArcGIS Server: Web Administration Using the Microsoft.NET Framework Contents 13 Network Address Translation (NAT) 12-7 Configuration strategies 12-8 All Web service components in secure network 12-9 Copy of components in DMZ 12-10 Web applications in DMZ 12-11 Reverse proxy server configuration 12-12 Choosing a reverse proxy 12-13 Setting up a reverse proxy with Apache 12-14 Configure SSL for Apache 12-15 URL redirect problems with reverse proxy 12-16 Using reverse proxy URLs in server directories 12-17 Reverse proxy scenarios 12-18 Exercise goals 12-19 Lesson review 12-20 Course conclusion Course conclusion 13-1 Course objectives 13-2 ESRI educational support 13-3 Learning pathways 13-4 Course evaluation 13-5 Thank you for attending 13-6 vi