7/27/2001O'Reilly Open Source Convention1 Pushing the Envelope With Perl: Using Perl With Microsoft Exchange Rick Tatem Systems Programmer SAS

Slides:



Advertisements
Similar presentations
EIONET Training Beginners Zope Course Miruna Bădescu Finsiel Romania Copenhagen, 27 October 2003.
Advertisements

Accel Computerized Maintenance Management System.
Agenda 1) Introductions 2) Expectations 3) Problem 4) Plan One Stop Shop Organize Application Staff Implement Portal Develop Data Warehouse Tools 5) Solution.
An Introduction to Visual Basic Terms & Concepts.
Microsoft Server 2008 R2 Group Policies & AD. Group Policies-Refresher  Policies are “all or nothing”  You cannot selectively choose within a policy.
Chapters 14 & 15 Internet Databases. E-Commerce  Bringing new products, services, or ideas to market, supporting and enhancing business operations 
A Comprehensive Web Application Development and Deployment Platform.
MCSE Guide to Microsoft Exchange Server 2003 Administration Chapter 14 Upgrading to Exchange Server 2003.
INTEGRATION SERVICES IN THE REAL WORLD Brian Garraty, Database Administrator Virginia Beach City Public Schools.
Copyright © 2006 by The McGraw-Hill Companies, Inc. All rights reserved. McGraw-Hill Technology Education Copyright © 2006 by The McGraw-Hill Companies,
70-290: MCSE Guide to Managing a Microsoft Windows Server 2003 Environment Chapter 1: Introduction to Windows Server 2003.
Low level CASE: Source Code Management. Source Code Management  Also known as Configuration Management  Source Code Managers are tools that: –Archive.
WMU GNL Automation How to make my IT life easier CHRISTOPHER KEYAERT CONSULTANT AT INOVATIV CLOUD AND DATACENTER MANAGEMENT MVP.
Feeds Computer Applications to Medicine NSF REU at University of Virginia July 27, 2006 Paul Lee.
Slide 1 of 9 Presenting 24x7 Scheduler The art of computer automation Press PageDown key or click to advance.
70-290: MCSE Guide to Managing a Microsoft Windows Server 2003 Environment, Enhanced Chapter 1: Introduction to Windows Server 2003.
Microsoft Exchange Exchange is more than just Electronic Mail The server that embraces Internet standards and extends rich messaging and collaboration.
Computer Software.
By Davis Hsu. Why is it important to have the Emergency Document automatically updated? The Emergency Document provides the important documentation on.
Włodzimierz Funika, Filip Szura Automation of decision making for monitoring systems.
© Paradigm Publishing Inc Chapter 12 Programming Concepts and Languages.
1 Integrated Development Environment Building Your First Project (A Step-By-Step Approach)
Creating Business Workflow Using SharePoint Designer 2007 Presented by Tarek Ghazali IT Technical Specialist Microsoft SQL Server MVP Microsoft SQL Server.
Copyright © 2006, SAS Institute Inc. All rights reserved. Enterprise Guide 4.2 : A Primer SHRUG : Spring 2010 Presented by: Josée Ranger-Lacroix SAS Institute.

Java Beans.
Module 8: Managing Client Configuration and Connectivity.
COMPUTER SOFTWARE Section 2 “System Software: Computer System Management ” CHAPTER 4 Lecture-6/ T. Nouf Almujally 1.
Basics of Web Databases With the advent of Web database technology, Web pages are no longer static, but dynamic with connection to a back-end database.
©Kwan Sai Kit, All Rights Reserved Windows Small Business Server 2003 Features.
| | Tel: | | Computer Training & Personal Development Microsoft Office PowerPoint 2007 Expert.
5.1 © 2004 Pearson Education, Inc. Lesson 5: Administering User Accounts Exam Microsoft® Windows® 2000 Directory Services Infrastructure Goals 
MIGRATING FROM MICROSOFT EXCHANGE SERVER AND OTHER MAIL SYSTEMS Appendix B.
Microsoft Office 2003: Advanced 1 ADVANCED MICROSOFT ACCESS Lesson 17 – Utilizing Advanced Management Tools.
An Introduction to Visual Basic
Common Servers in a Workplace Environment Brandon Reynolds Computer Electronic Networking Dept. of Technology, Eastern Kentucky University.
National Center for Supercomputing Applications NCSA OPIE Presentation November 2000.
NT Component Development Environment for RTR Engineering Manager EASE Dianne Dickerson.
Learningcomputer.com SQL Server 2008 – Administration, Maintenance and Job Automation.
Active Server Pages and Application Service Providers Architecture for 2000 and beyond Krishen Kota Denali Technologies
SONIC-3: Creating Large Scale Installations & Deployments Andrew S. Neumann Principal Engineer, Progress Sonic.
Active Server Pages (ASP), also known as Classic ASP or ASP Classic, was Microsoft's first server-side script engine for dynamically generated web pages.
FSU Metadirectory Project The Issue of Identity Management Executive Overview.
Windows Role-Based Access Control Longhorn Update
Microsoft’s Roles Based Authorization Manager CSG, May 2004.
Types/Levels of Integration Chao-Hsien Chu, Ph.D. School of Information Sciences and Technology The Pennsylvania State University Presentation Data Functional.
I Power Higher Computing Software Development Development Languages and Environments.
MSG331 Exchange Server 2000/2003 Software Development Kit Susan Hill Lead Programmer Writer Microsoft Corporation.
Open Solutions for a Changing World™ Copyright 2005, Data Access Worldwide June 6-9, 2005 Key Biscayne, Florida 1 Application Deployment Stephen W. Meeley.
ASP. ASP is a powerful tool for making dynamic and interactive Web pages An ASP file can contain text, HTML tags and scripts. Scripts in an ASP file are.
Introduction to Active Directory
MCSE Guide to Microsoft Exchange Server 2003 Administration Chapter Three Managing Recipients.
The official electronic registered mail (posta elettronica certificata – PEC)
Meeting Scheduling System Capstone Project - Team#5 Fall2007.
MCSE Guide to Microsoft Exchange Server 2003 Administration Chapter One Introduction to Exchange Server 2003.
Building Workflow Applications With Microsoft ® Exchange 2000 Jim Reitz Program Manager Exchange Enhanced Platform Product Unit Microsoft Corporation.
Microsoft Identity Integration Server & Role Base Access Theo Kostelijk Consultant Microsoft BV
MSG 334 Creating Exchange Administrative Scripting for the Non-Programmer Susan Hill Lead Programmer Writer Microsoft Corporation.
Copyright © 2006 by The McGraw-Hill Companies, Inc. All rights reserved. McGraw-Hill Technology Education Chapter 13 A & B Programming Languages and the.
Integrating with and Extending Visual Studio. Objectives.
Copyright © New Signature Who we are: Focused on consistently delivering great customer experiences. What we do: We help you transform your business.
Part 1 The Basics of Information Systems. Purpose of Information Systems Information systems ◦ Collects, stores and organizes information ◦ Retrieves.
A S P. Outline  The introduction of ASP  Why we choose ASP  How ASP works  Basic syntax rule of ASP  ASP’S object model  Limitations of ASP  Summary.
Chapter 2 Build Your First Project A Step-by-Step Approach 2 Exploring Microsoft Visual Basic 6.0 Copyright © 1999 Prentice-Hall, Inc. By Carlotta Eaton.
Stress Free Deployments with Octopus Deploy
Objectives Differentiate between the different editions of Windows Server 2003 Explain Windows Server 2003 network models and server roles Identify concepts.
The Client/Server Database Environment
An Introduction to Visual Basic
SQL Server 2000: Integration with AD and E2K
Presentation transcript:

7/27/2001O'Reilly Open Source Convention1 Pushing the Envelope With Perl: Using Perl With Microsoft Exchange Rick Tatem Systems Programmer SAS

7/27/2001O'Reilly Open Source Convention2 About the speaker… Started in the UNIX world (’92-99)  Perl user since ~ ’94 Moved into NT by choice (’96)  Something new  Not backups No Guru…

7/27/2001O'Reilly Open Source Convention3 Microsoft Exchange Exchange version 5.5  Information Store  transactional database  Private (mailboxes) and Public  Directory Service  LDAP compliant  Separate from the accounts database

7/27/2001O'Reilly Open Source Convention4 Perl and Windows NT/2000 Windows/UNIX issues Binary distribution from ActiveState  Key modules  Win32::OLE  Win32::OLE::Enum  Perl Development Kit  PerlCtrl – create COM objects  Visual debugger Perl2exe

7/27/2001O'Reilly Open Source Convention5 Perl and Windows NT/2000 Most example code is VBScript  Don’t reinvent the wheel  Translation is easy

7/27/2001O'Reilly Open Source Convention6 Perl and Windows NT/2000 VB to Perl example  All perl scripts begin with: use strict; use Win32::OLE;  Methods vs. Properties  Dot notation ADO Connection example Listing 1Listing 2

7/27/2001O'Reilly Open Source Convention7 Perl and Windows NT/2000 VB Set conn = CreateObject("ADODB.Connection") conn.Provider = "ADSDSOObject" conn.Open "ADsProvider;CN=uid,DC=domain;pwd" Perl my $conn = Win32::OLE->new("ADODB.Connection"); $conn->{'Provider'} = "ADsDSOObject"; $conn->Open("ADs Provider;CN=uid,DC=domain;pwd"); Listing 1Listing 2

7/27/2001O'Reilly Open Source Convention8 Exchange-related Tasks Message Tracking Information Stores Directory Services

7/27/2001O'Reilly Open Source Convention9 Message Tracking Logs Simple tab delimited text Exchange Admin GUI tool for following messages throughout site Usefulness (find source of virus outbreak)

7/27/2001O'Reilly Open Source Convention10 Message Tracking Logs Perl featured in Exchange Admin newsletter article (July, 2000) Good  Used Perl  Useful concept – overall message flow Not good for multiple-server Code Example

7/27/2001O'Reilly Open Source Convention11 Directory Services Most tools High visibility Even more important after transition to Active Directory Major projects  Rules-based Distribution Lists  DLManager

7/27/2001O'Reilly Open Source Convention12 Rules-based Distribution Lists Examples lacking  Only creation shown  No concept of ‘update’ Perl makes it easier  Easy to compare lists  Win32::OLE gives you access to ADSI

7/27/2001O'Reilly Open Source Convention13 Rules-based Distribution Lists Membership rules are in Perl syntax (($unit eq ‘DEPT’) && ($loc eq ‘City’)) For each list…  Rule is eval’ed for each employee  Current membership compared to eval’ed membership  Adds/Deletes/Creates as necessary

7/27/2001O'Reilly Open Source Convention14 DLManager Requirements  Decommission ListServ on VM  Provide same functionality (80/20) 2/3 already done  “Closed” lists – regular DLs  Automated lists – autodl.pl  “OPEN” lists – not available

7/27/2001O'Reilly Open Source Convention15 DLManager Available solutions lacking in one way or another  Microsoft’s EXLIST  Reddfish ListServer  NTP ListManager

7/27/2001O'Reilly Open Source Convention16 DLManager Major features  Actually USES the existing directory  Leverages security  Written in Perl PerlCtrl – part of Perl Development Kit from ActiveState

7/27/2001O'Reilly Open Source Convention17 DLManager Sample code Demo

7/27/2001O'Reilly Open Source Convention18 Exchange 2000/Active Directory MAJOR changes/improvements Directory  NT Account (SAM)/Exchange Directory consolidation  Distribution List = Security Group + mail  Extensible Schema

7/27/2001O'Reilly Open Source Convention19 Exchange 2000/Active Directory Information Store  IFS – ‘cd’ into your mailbox!  WebDAV  XML  Store Events/Sinks  Synchronous events  More robust

7/27/2001O'Reilly Open Source Convention20 Conclusion Currently updating code for Windows2000 Active Directory and Exchange2000 Code available from me  PerlCtrl available as part of Perl Development Kit from ActiveState Q&A… Thank you!