Tải bản đầy đủ (.pdf) (751 trang)

Tài liệu Windows Administration Productivity Solutions for IT Professionals ppt

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (12.32 MB, 751 trang )


PUBLISHED BY
Microsoft Press
A Division of Microsoft Corporation
One Microsoft Way
Redmond, Washington 98052-6399
Copyright © 2008 by Dan Holme
All rights reserved. No part of the contents of this book may be reproduced or transmitted in any form or
by any means without the written permission of the publisher.
Library of Congress Control Number: 2007941090
Printed and bound in the United States of America.
1 2 3 4 5 6 7 8 9 QWT 3 2 1 0 9 8
Distributed in Canada by H.B. Fenn and Company Ltd.
A CIP catalogue record for this book is available from the British Library.
Microsoft Press books are available through booksellers and distributors worldwide. For further infor-
mation about international editions, contact your local Microsoft Corporation office or contact Microsoft
Press International directly at fax (425) 936-7329. Visit our Web site at www.microsoft.com/mspress.
Send comments to
Microsoft, Microsoft Press, Active Directory, ActiveX, Excel, Expression, FrontPage, Groove, Internet
Explorer, MSDN, MSN, Outlook, PowerPoint, SharePoint, SQL Server, Visio, Visual Basic, Visual
Studio, Windows, Windows Media, Windows NT, Windows PowerShell, Windows Server, and
Windows Vista are either registered trademarks or trademarks of Microsoft Corporation in the United
States and/or other countries. Other product and company names mentioned herein may be the
trademarks of their respective owners.
The example companies, organizations, products, domain names, e-mail addresses, logos, people, places,
and events depicted herein are fictitious. No association with any real company, organization, product,
domain name, e-mail address, logo, person, place, or event is intended or should be inferred.
7KLVERRNH[SUHVVHVWKHDXWKRU¶VYLHZVDQGRSLQions. The information contained in this book is provided
without any express, statutory, or implied warranties. Neither the authors, Microsoft Corporation, nor its
resellers, or distributors will be held liable for any damages caused or alleged to be caused either directly


or indirectly by this book.
Acquisitions Editor: Martin DelRe
Developmental Editor: Karen Szall
Project Editor: Melissa von Tschudi-Sutton
Project Management: Publishing.Com
Compositor: Curtis Philips
Copy Editor: Roger LeBlanc
Body Part No. X14-38533
Technical Reviewer: Rozanne Whalen;
Technical Review services provided by
Content Master, a member of CM Group, Ltd.
Proofreader: Teresa Barensfeld
Indexer: Potomac Indexing, LLC: Julie
Kawabata & Seth Maislin
Cover: Design by Tom Draper Design;
Illustration by Todd Daman
This book is dedicated to my incredible clients,
who have provided a decade-plus of learning,
a lifetime of experiences, and a wealth of knowledge.
This book is to them, but it is also from them, through me,
to you, the community of Windows administrators.

v
About the Author
Dan Holme is a graduate of Yale University and the Thunderbird School of Global Manage-
ment. He has spent over a decade as a consultant and trainer, delivering solutions to tens of
thousands of IT professionals from the most prestigious organizations and corporations
around the world. Dan’s company, Intelliem, specializes in boosting the productivity of IT
professionals and end users by creating advanced, customized solutions that integrate clients’
specific design and configuration into productivity-focused tools, training, and knowledge

management services.
Dan is also a contributing editor for Windows IT Pro magazine, a Microsoft MVP (Microsoft
Office SharePoint Server), and the community lead of OfficeSharePointPro.com. From his
base in beautiful Maui, Dan travels around the globe supporting customers and delivering
Windows technologies training. Immediately following the release of this resource kit, he will
be preparing for the Beijing Olympic Games as the Windows Technologies Consultant for
NBC television, a role he also played in Torino in 2006.

vii
Acknowledgments
The book you hold in your hands has a long history shaped by the many wonderful people
who’ve helped me along the way.
First, there are my clients—you slave-driving, insane, and awe-inspiring friends who trust me
to guide you and your enterprise, and who share your expertise and experience with me.
Without you, there’d be no body of knowledge, solutions, and experience from which to
create this resource kit. Thank you for making my career one of constant learning. Thank you
for your business and your faith in me. Thank you for providing me many opportunities of a
lifetime.
Next, there are my colleagues—you über-crazy, über-guru guys and gals who blow me away
with your brains and brawn. Jeremy, Don, Darren, Mark, Rhonda, Derek, Alan, Gil, Sean,
Guido, Jim, Brian, Steve, Richard, Joel, Tom, and I’m so sorry if I missed someone. . . . Thanks
for setting the bar so high and encouraging me to reach it!
Then, there are the incredible folks at Microsoft Press. Starting with Martin Del Re. You saw
me presenting solutions-based content back in 2003 and said, “Someday we need to write this
stuff down,” and you stuck by me all the way. We made it! Karen Szall, I cashed in my entire
bank of credits on this project, and I owe you the next one! Melissa von Tschudi-Sutton, you
came on board this big train without ever having worked with me before, and you gracefully
extracted more than 650 pages of content and dozens of scripts in a period of just 10 weeks.
There aren’t enough words to thank you, Melissa! And, of course, Curtis Philips, Rozanne
Whalen, Roger LeBlanc, and Teresa Barensfeld—you tackled this new type of resource kit with

amazing skill. This project was mammoth, and it could not have happened without each of
you. I am so lucky to have worked with you!
Finally, and most importantly, to my friends and family: Lyman, Maddie, Mom and Dad, Bob
and Joni, Stan and Marylyn, Julie, Joe, and the entire gang in Maui and Phoenix. Your patience
and support and love have been the fuel in my fire. Thank you for cheering me on, picking me
up, and waiting for me at the finish line. I owe you all a lot of quality time when this project is
finished. You have taught me the meaning of ohana! Mahalo!

ix
Contents at a Glance
Solution Collection 1: Role-Based Management . . . . . . . . . . . . . . . . . . . . . . . . .1
Solution Collection 2: Managing Files, Folders, and Shares . . . . . . . . . . . . . . 89
Solution Collection 3: Managing User Data and Settings . . . . . . . . . . . . . . . 171
Solution Collection 4: Implementing Document Management
and Collaboration with SharePoint . . . . . . . . . . . . . . 299
Solution Collection 5: Active Directory Delegation and Administrative
Lock Down. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 363
Solution Collection 6: Improving the Management and Administration
of Computers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 419
Solution Collection 7: Extending User Attributes and Management
Tools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 479
Solution Collection 8: Reimagining the Administration of Groups
and Membership . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 531
Solution Collection 9: Improving the Deployment and Management
of Applications and Configuration . . . . . . . . . . . . . . 583
Solution Collection 10: Implementing Change, Configuration,
and Policies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 635
xi
www.microsoft.com/learning/booksurvey

Microsoft is interested in hearing your feedback so we can continually improve our books and
learning resources for you. To participate in a brief online survey, please visit:
What do you think of this book? We want to hear from you!
Table of Contents
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xiii
Document Conventions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .xiii
System Requirements. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .xiii
Web-Based Content. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .xiii
Find Additional Content Online . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .xiv
Companion Media . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .xiv
Using the Scripts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xv
Resource Kit Support Policy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xvi
Solution Collection 1: Role-Based Management . . . . . . . . . . . . . . . . . . . . . . . . . . .1
Scenarios, Pain, and Solution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
The 80/20 rule. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
Scripts and tools on the companion media . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
Microsoft and third-party tools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
The Windows Administration Resource Kit online community . . . . . . . . . . . . 10
Enough, already!. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1-1: Enumerate a User’s (or Computer’s) Group Memberships . . . . . . . . . . . . . . . . . . 11
Solution overview. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
Active Directory Users and Computers. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
DS commands. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Creating a batch script . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
Enumerating group membership with VBScript . . . . . . . . . . . . . . . . . . . . . . . . . 15
Why VBScript?. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
Next steps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
For more information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
Solution summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

xii Table of Contents
1-2: Create a GUI Tool to Enumerate Group Memberships . . . . . . . . . . . . . . . . . . . . . 26
Solution overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
HTML Applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
Create an HTA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
For more information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
Solution summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
1-3: Extend Active Directory Users and Computers to Enumerate
Group Memberships . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
Solution overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
Arguments and HTAs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
Integrating a custom HTA with an MMC snap-in using tasks . . . . . . . . . . . . . 38
Integrating a custom HTA with an MMC snap-in using
display specifiers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
Tasks or display specifiers. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
Solution summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
1-4: Understand Role-Based Management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
Solution overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
Role groups. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
Capability management groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
Role groups are nested into capability management groups . . . . . . . . . . . . . 51
Other nesting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
Data, business logic, and presentation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
Third-party tools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
Solution summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
1-5: Implement Role-Based Access Control. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
Solution overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55

Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
Role groups. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
Capability management groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
Representing business requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
Implementing capabilities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
Automating and provisioning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
Solution summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
1-6: Reporting and Auditing RBAC and Role-Based Management . . . . . . . . . . . . . . . 66
Solution overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
Table of Contents xiii
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
My Memberships . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
Access Report . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
Auditing internal compliance of your role-based access control . . . . . . . . . . . 73
Solution summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
1-7: Getting to Role-Based Management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
Solution overview. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
A review of role-based management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
Discussing and selling role-based management. . . . . . . . . . . . . . . . . . . . . . . . . 79
The road to role-based management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
Token size . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
Solution summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
Solution Collection 2: Managing Files, Folders, and Shares . . . . . . . . . . . . . . . . 89
Scenarios, Pain, and Solution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
2-1: Work Effectively with the ACL Editor User Interfaces . . . . . . . . . . . . . . . . . . . . . . . 92
Solution overview. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
The ACL editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
Evaluating effective permissions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96

Solution summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
2-2: Manage Folder Structure. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
Solution overview. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
Create a folder structure that is wide rather than deep. . . . . . . . . . . . . . . . . . 100
Use DFS namespaces to present shared folders in a logical hierarchy . . . . . 103
Solution summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
2-3: Manage Access to Root Data Folders . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
Solution overview. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
Create one or more consistent root data folders on each file server . . . . . . 104
Use Group Policy to manage and enforce ACLs on root data folders . . . . . 105
Solution summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
2-4: Delegate the Management of Shared Folders. . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
Solution overview. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
xiv Table of Contents
Dedicate servers that perform a file server role . . . . . . . . . . . . . . . . . . . . . . . . 107
Manage the delegation of administration of shared folders . . . . . . . . . . . . . 108
Solution summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
2-5: Determine Which Folders Should Be Shared. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
Solution overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
Determine which folders should be shared. . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
Solution summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
2-6: Implement Folder Access Permissions Based on Required Capabilities . . . . . . 112
Solution overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
Implement a Read capability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
Implement a Browse To capability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114

Implement an Edit capability. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
Implement a Contribute capability. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117
Implement a Drop capability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
Implementing a Support capability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
Create scripts to apply permissions consistently . . . . . . . . . . . . . . . . . . . . . . . 119
Manage folder access capabilities using role-based access control . . . . . . . 119
Solution summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120
2-7: Understand Shared Folder Permissions (SMB Permissions). . . . . . . . . . . . . . . . . 120
Solution overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
Scripting SMB permissions on local and remote systems . . . . . . . . . . . . . . . . 123
Solution summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123
2-8: Script the Creation of an SMB Share. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124
Solution overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124
Using Share_Create.vbs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124
Customizing Share_Create.vbs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124
Understanding Share_Create.vbs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
Solution summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126
2-9: Provision the Creation of a Shared Folder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126
Solution overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
Using Folder_Provision.hta. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
Basic customization of Folder_Provision.hta . . . . . . . . . . . . . . . . . . . . . . . . . . 130
Table of Contents xv
Understanding the code behind Folder_Provision.hta and
advanced customization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131
Solution summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135
2-10: Avoid the ACL Inheritance Propagation Danger
of File and Folder Movement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136

Solution overview. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136
See the bug-like feature in action . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
What in the world is going on? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138
Solving the problem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139
Change the culture, change the configuration . . . . . . . . . . . . . . . . . . . . . . . . . 140
Solution summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140
2-11: Preventing Users from Changing Permissions on Their Own Files. . . . . . . . . . 141
Solution overview. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
What about object lockout? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143
Solution summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143
2-12: Prevent Users from Seeing What They Cannot Access. . . . . . . . . . . . . . . . . . . . 143
Solution overview. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143
One perspective: Don’t worry about it . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144
A second perspective: Manage your folders . . . . . . . . . . . . . . . . . . . . . . . . . . . 144
A third perspective and a solution: Access-based Enumeration. . . . . . . . . . . 144
Solution summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
2-13: Determine Who Has a File Open . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
Solution overview. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
Using FileServer_OpenFile.vbs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146
Understanding FileServer_OpenFile.vbs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146
Solution summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146
2-14: Send Messages to Users . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
Solution overview. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
Using Message_Notification.vbs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
Understanding Message_Notification.vbs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148

Using PSExec to execute a script on a remote machine . . . . . . . . . . . . . . . . . 148
Listing the open sessions on a server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150
xvi Table of Contents
Using and customizing FileServer_NotifyConnectedUsers.vbs . . . . . . . . . . . 150
Solution summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151
2-15: Distribute Files Across Servers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151
Solution overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151
Using Robocopy to distribute files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151
Using DFS Replication to distribute files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152
Solution summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154
2-16: Use Quotas to Manage Storage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154
Solution overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154
What’s new in quota management. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155
Quota templates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155
Apply a quota to a folder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156
Solution summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157
2-17: Reduce Help Desk Calls to Recover Deleted or Overwritten Files . . . . . . . . . . 157
Solution overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157
Enabling shadow copies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158
Understanding and configuring shadow copies. . . . . . . . . . . . . . . . . . . . . . . . 160
Accessing previous versions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161
Solution summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162
2-18: Create an Effective, Delegated DFS Namespace. . . . . . . . . . . . . . . . . . . . . . . . . 163
Solution overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163
Creating DFS namespaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164
Delegating DFS namespaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164

Linking DFS namespaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166
Presenting DFS namespaces to users . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168
Solution summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169
Solution Collection 3: Managing User Data and Settings . . . . . . . . . . . . . . . . . 171
Scenarios, Pain, and Solution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172
3-1: Define Requirements for a User Data and Settings Framework. . . . . . . . . . . . . 174
Solution overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174
Understand the business requirements definition exercise . . . . . . . . . . . . . . 174
Define the high-level business requirements . . . . . . . . . . . . . . . . . . . . . . . . . . 177
Table of Contents xvii
Determine key design decision that is derived from high-level business
requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180
Define requirements derived from key design decisions. . . . . . . . . . . . . . . . . 181
Solution summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184
3-2: Design UDS Components That Align Requirements and Scenarios
with Features and Technologies (Part I). . . . . . . . . . . . . . . . . . . . . . . . . . . . 185
Solution overview. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185
Understand UDS options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 186
Align user data and settings options with requirements and scenarios . . . . 189
Validate the outcome for desktop, roaming, relocated,
and traveling users . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191
Solution summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192
3-3: Create, Secure, Manage, and Provision Server-Side User Data Stores . . . . . . . . 193
Solution overview. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193
Create the user data store root folder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195
Align physical namespace with management requirements
such as quotas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 200

Provision the creation of data stores. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208
Configure file screens . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 210
Solution summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 210
3-4: Create the SMB and DFS Namespaces for User Data Stores . . . . . . . . . . . . . . . . 211
Solution overview. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211
Create the SMB namespace for user data and settings stores . . . . . . . . . . . . 212
Design the logical view of user data and settings stores with
DFS Namespaces. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215
Build a DFS namespace to support thousands of users . . . . . . . . . . . . . . . . . . 217
Understand the impact of data movement and namespace changes. . . . . . 218
Consider the impact of %username% changes . . . . . . . . . . . . . . . . . . . . . . . . . 220
Build an abstract DFS namespace for user data and settings (no
site-based namespace, preferably no human names). . . . . . . . . . . . . . . . 221
Automate and provision the creation of user data stores and
DFS namespaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222
Solution summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223
3-5: Design and Implement Folder Redirection. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224
Solution overview. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224
xviii Table of Contents
Understand the role of folder redirection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225
Configure folder redirection policies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227
Configure folder redirection targets. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 228
Configure folder redirection settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 232
Support redirection for users on both Windows XP and Windows Vista. . . 236
Redirect without Group Policy: Favorites, Music, Pictures, and Videos. . . . . 238
Achieve a unified redirected folder environment for Windows XP
and Windows Vista . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 242
Solution summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245

3-6: Configure Offline Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245
Solution overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245
Understand the cache. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 246
Understand caching . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 246
Understand synchronization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247
Understand offline mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247
Leverage offline files for the UDS framework . . . . . . . . . . . . . . . . . . . . . . . . . . 248
Put offline files to use . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 256
Solution summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 257
3-7: Design and Implement Roaming Profiles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 257
Solution overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 257
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 257
Analyze the structure of the Windows Vista user profile . . . . . . . . . . . . . . . . 258
Review the components that create the user profile . . . . . . . . . . . . . . . . . . . . 260
Configure the folders that will not roam . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 262
Configure roaming profiles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 263
Recognize the “V2” of Windows Vista roaming profiles . . . . . . . . . . . . . . . . . 263
Unify the experience of Windows XP and Windows Vista users . . . . . . . . . . 264
Work through the FOLKLORE of roaming profiles . . . . . . . . . . . . . . . . . . . . . . 264
Identify the benefit of roaming profiles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 266
Manage the Application Data (AppData\Roaming) folder . . . . . . . . . . . . . . . 266
Solution summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267
3-8: Manage User Data That Should Not Be Stored on Servers. . . . . . . . . . . . . . . . . 267
Solution overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267
Identify the types of data you want to manage as local only . . . . . . . . . . . . 269
Design a local-only data folder structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 269
Implement local-only file folders . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271
Table of Contents xix

Ensure that applications will find relocated media folders . . . . . . . . . . . . . . . 271
Redirect Windows XP media folders that you are treating as local only. . . . 272
Provide a way for users to find relocated folders . . . . . . . . . . . . . . . . . . . . . . . 272
Communicate to users and train them regarding local-only data . . . . . . . . . 274
Solution summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 274
3-9: Manage User Data That Should Be Accessed Locally . . . . . . . . . . . . . . . . . . . . . . 274
Solution overview. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 274
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 274
Determine the name for a local files folder . . . . . . . . . . . . . . . . . . . . . . . . . . . . 275
Option 1: Use a roaming profile folder. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 276
Option 2: Leverage offline files (Windows Vista only) . . . . . . . . . . . . . . . . . . . 276
Option 3: Create a local folder that is backed up to a network store . . . . . . 278
Solution summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 279
3-10: Back Up Local Data Stores for Availability, Mobility, and Resiliency. . . . . . . . . 279
Solution overview. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 279
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 279
Define the goals of a synchronization solution . . . . . . . . . . . . . . . . . . . . . . . . . 280
Utilize Robocopy as a backup engine. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 281
Leverage Folder_Synch.vbs as a wrapper for Robocopy . . . . . . . . . . . . . . . . . 282
Deploy Folder_Synch.vbs and Robocopoy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 283
Determine how and when to run Folder_Synch.vbs for each local store . . . 284
Launch Folder_Synch.vbs manually . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 284
Enable users to right-click a folder and back it up using
a shell command. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 286
Compare manual options for Folder_Synch.vbs . . . . . . . . . . . . . . . . . . . . . . . . 288
Run Folder_Synch.vbs automatically . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 288
Run Folder_Synch.vbs as a scheduled task . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289
Run Folder_Synch.vbs as a logon, logoff, startup, or shutdown script. . . . . . 290
Log and monitor synchronization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 291
Solution summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 292

3-11: Design UDS Components That Align Requirements and Scenarios
with Features and Technologies (Part II) . . . . . . . . . . . . . . . . . . . . . . . . . . . 293
Solution overview. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 293
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 293
Recognize the crux of the challenge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 293
Identify the desired classes of data stores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 294
Analyze and classify your user data stores and data . . . . . . . . . . . . . . . . . . . . 294
Solution summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 297
xx Table of Contents
Solution Collection 4: Implementing Document Management
and Collaboration with SharePoint . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 299
Scenarios, Pain, and Solution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 300
4-1: Create and Configure a Document Library . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 301
Solution overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 301
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 302
Create a site . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 302
Create a document library . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 303
Configure document library settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 304
Configure the document library title . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 306
Enable or disable folders within the document library . . . . . . . . . . . . . . . . . . 307
Change the default template for the library . . . . . . . . . . . . . . . . . . . . . . . . . . . 307
Configure security for a document library . . . . . . . . . . . . . . . . . . . . . . . . . . . . 309
Solution summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 311
4-2: Manage Document Metadata Using Library and Site Columns. . . . . . . . . . . . . 312
Solution overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 312
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 312
Create a column. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 313
Work with custom columns from Microsoft Office clients . . . . . . . . . . . . . . . 314
Work with document properties from the SharePoint Web interface . . . . . 316
Modify or delete library columns . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 318

Reorder columns . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 319
Manage site columns . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 319
Create site columns . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 319
Use a site column in a list or library . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 320
Modify and delete site columns . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 320
Solution summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 321
4-3: Implement Managed Content Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 321
Solution overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 321
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 321
Create a content type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 322
Add one or more content types to a list or library . . . . . . . . . . . . . . . . . . . . . 324
Understand child site and list content types. . . . . . . . . . . . . . . . . . . . . . . . . . . 324
Protect a content type by making it read-only. . . . . . . . . . . . . . . . . . . . . . . . . 326
Do not change default SharePoint content types . . . . . . . . . . . . . . . . . . . . . . 326
Solution summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 326
Table of Contents xxi
4-4: Configure Multiple Templates for a Document Library . . . . . . . . . . . . . . . . . . . . 327
Solution overview. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 327
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 327
Create a central library for templates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 327
Configure a content type for a template . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 328
Configure a library to support the content types. . . . . . . . . . . . . . . . . . . . . . . 328
Solution summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 329
4-5: Add, Save, and Upload Documents to a Document Library . . . . . . . . . . . . . . . . 329
Solution overview. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 329
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 329
Create a new document with the New command . . . . . . . . . . . . . . . . . . . . . . 330
Upload documents with the Upload commands . . . . . . . . . . . . . . . . . . . . . . . 330
Add documents to document libraries with Windows Explorer . . . . . . . . . . . 331
Save to a document library from a SharePoint-compatible application . . . . 332

E-mail–enable a document library . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 332
Solution summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 333
4-6: Create Shortcuts to Document Libraries for End Users . . . . . . . . . . . . . . . . . . . . 334
Solution overview. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 334
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 334
Create Network Places (Windows XP). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 334
Create Network Locations (Vista) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 335
Solution summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 336
4-7: Quarantine and Manage Uploads to a Document Library
with Multiple Content Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 336
Solution overview. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 336
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 336
Solution summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 337
4-8: Work with Documents in a Document Library . . . . . . . . . . . . . . . . . . . . . . . . . . . 338
Solution overview. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 338
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 338
View a document in a document library . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 338
Edit a document in a document library . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 338
Open a document with Office 2007 clients installed . . . . . . . . . . . . . . . . . . . . 338
Solution summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 339
4-9: Monitor Changes to Libraries or Documents with Alerts and RSS . . . . . . . . . . . 339
Solution overview. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 339
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 339
xxii Table of Contents
Subscribe to e-mail alerts for a library or document. . . . . . . . . . . . . . . . . . . . 340
Monitor library activity using RSS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 341
Solution summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 341
4-10: Control Document Editing with Check Out. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 341
Solution overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 341
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 341

Require document checkout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 342
Check out a document . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 342
Understand the user experience while a document is checked out . . . . . . . 343
Manage document check in . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 343
Solution summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 345
4-11: Implement and Maintain Document Version History . . . . . . . . . . . . . . . . . . . . 345
Solution overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 345
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 345
Configure version history. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 346
Manage the creation of major and minor versions . . . . . . . . . . . . . . . . . . . . . 346
Manage document versions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 347
Compare document versions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 347
Solution summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 347
4-12: Implement Content Approval . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 347
Solution overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 347
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 347
Configure content approval . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 348
Understand the interaction of content approval, versioning,
and checkout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 348
Solution summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 348
4-13: Implement a Three-State Workflow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 349
Solution overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 349
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 349
Configure the choice field for the state. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 349
Configure the three-state workflow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 350
Launch and manage workflows. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 352
Solution summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 352
4-14: Organize and Manage Documents with Folders and Views. . . . . . . . . . . . . . . 353
Solution overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 353
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 353

Use folders to scope document management . . . . . . . . . . . . . . . . . . . . . . . . . 353
Table of Contents xxiii
Use views to scope the presentation and management of documents. . . . . 354
Solution summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 354
4-15: Configure WSS Indexing of PDF Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 355
Solution overview. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 355
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 355
Disable search within a library . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 355
Enable indexing of PDFs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 355
Assign an icon to unrecognized file types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 358
Solution summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 359
4-16: Work with SharePoint Files Offline . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 359
Solution overview. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 359
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 359
Download a copy of a file. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 360
Provide offline access to files using the local cache . . . . . . . . . . . . . . . . . . . . . 360
Use Outlook 2007 to take libraries and lists offline . . . . . . . . . . . . . . . . . . . . . 361
Other options for offline use of SharePoint document libraries . . . . . . . . . . . 362
Solution summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 362
Solution Collection 5: Active Directory Delegation and Administrative
Lock Down . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 363
Scenarios, Pain, and Solution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 363
5-1: Explore the Components and Tools of Active Directory Delegation . . . . . . . . . 365
Solution overview. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 365
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 365
Use Active Directory object ACLs and ACL editor interfaces. . . . . . . . . . . . . . 365
Manage access control entries on Active Directory objects . . . . . . . . . . . . . . 367
Adhere to the golden rules of delegation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 369
Apply permissions with a friend: The Delegation Of Control Wizard . . . . . . 370
Manage the presentation of your delegation . . . . . . . . . . . . . . . . . . . . . . . . . . 372

Solution summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 373
5-2: Customize the Delegation Of Control Wizard. . . . . . . . . . . . . . . . . . . . . . . . . . . . 373
Solution overview. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 373
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 373
Locate and understand Delegwiz.inf. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 374
Customize Delegwiz.inf . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 377
Use Microsoft’s super-duper Delegwiz.inf . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 378
Solution summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 379
xxiv Table of Contents
5-3: Customize the Permissions Listed in the ACL Editor Interfaces . . . . . . . . . . . . . 380
Solution overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 380
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 380
Recognize that some permissions are hidden. . . . . . . . . . . . . . . . . . . . . . . . . . 380
Modify Dssec.dat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 381
Ensure the visibility of permissions that you are delegating. . . . . . . . . . . . . . 383
Solution summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 383
5-4: Evaluate, Report, and Revoke Active Directory Permissions . . . . . . . . . . . . . . . . 384
Solution overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 384
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 384
Use Dsacls to report Active Directory permissions. . . . . . . . . . . . . . . . . . . . . . 384
Use ACLDiag to report Active Directory permissions . . . . . . . . . . . . . . . . . . . 385
Use ADFind to report Active Directory permissions . . . . . . . . . . . . . . . . . . . . 386
Use DSRevoke to report Active Directory permissions . . . . . . . . . . . . . . . . . . 387
Evaluate permissions assigned to a specific user or group. . . . . . . . . . . . . . . 388
Revoke Active Directory permissions with DSRevoke . . . . . . . . . . . . . . . . . . . 389
Revoke Active Directory permissions with Dsacls. . . . . . . . . . . . . . . . . . . . . . . 389
Reset permissions to Schema defaults . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 390
Solution summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 391
5-5: Assign and Revoke Permissions with Dsacls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 391
Solution overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 391

Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 391
Identify the basic syntax of Dsacls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 392
Delegate permissions to manage computer objects . . . . . . . . . . . . . . . . . . . . 392
Grant permissions to manage other common object classes. . . . . . . . . . . . . 394
Use Dsacls to delegate other common tasks . . . . . . . . . . . . . . . . . . . . . . . . . . 394
Solution summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 400
5-6: Define Your Administrative Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 401
Solution overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 401
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 401
Define the tasks that are performed . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 401
Define the distinct scopes of each task . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 402
Bundle tasks within a scope . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 402
Identify the rules that currently perform task bundles . . . . . . . . . . . . . . . . . . 402
Solution summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 402
5-7: Role-Based Management of Active Directory Delegation . . . . . . . . . . . . . . . . . 403
Solution overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 403
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 403
Table of Contents xxv
Identify the pain points of an unmanaged delegation model . . . . . . . . . . . . 403
Create capability management groups to manage delegation . . . . . . . . . . . 405
Assign permissions to capability management groups . . . . . . . . . . . . . . . . . . 405
Delegate control by adding roles to capability management groups. . . . . . 406
Create granular capability management groups . . . . . . . . . . . . . . . . . . . . . . . 406
Report permissions in a role-based delegation. . . . . . . . . . . . . . . . . . . . . . . . . 407
Solution summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 408
5-8: Scripting the Delegation of Active Directory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 408
Solution overview. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 408
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 409
Recognize the need for scripted delegation . . . . . . . . . . . . . . . . . . . . . . . . . . . 409
Script delegation with Dsacls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 410

Solution summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 410
5-9: Delegating Administration and Support of Computers. . . . . . . . . . . . . . . . . . . . 411
Solution overview. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 411
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 411
Define scopes of computers. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 411
Create capability management groups to represent
administrative scopes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 412
Implement the delegation of local administration . . . . . . . . . . . . . . . . . . . . . . 412
Manage the scope of delegation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 414
Get the Domain Admins group out of the local Administrators groups . . . . 416
Solution summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 416
5-10: Empty as Many of the Built-in Groups as Possible . . . . . . . . . . . . . . . . . . . . . . . 416
Solution overview. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 416
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 417
Delegate control to custom groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 417
Identify protected groups. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 417
Don’t bother trying to un-delegate the built-in groups . . . . . . . . . . . . . . . . . 418
Solution summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 418
Solution Collection 6: Improving the Management and Administration
of Computers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 419
Scenarios, Pain, and Solution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 419
6-1: Implement Best Practices for Managing Computers in Active Directory . . . . . 421
Solution overview. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 421
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 421
Establish naming standards for computers . . . . . . . . . . . . . . . . . . . . . . . . . . . . 422

×