惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Engineering at Meta
Engineering at Meta
P
Privacy International News Feed
W
WeLiveSecurity
Spread Privacy
Spread Privacy
S
Schneier on Security
Google Online Security Blog
Google Online Security Blog
N
News and Events Feed by Topic
Forbes - Security
Forbes - Security
Cisco Talos Blog
Cisco Talos Blog
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
L
Lohrmann on Cybersecurity
P
Privacy & Cybersecurity Law Blog
T
The Exploit Database - CXSecurity.com
C
CXSECURITY Database RSS Feed - CXSecurity.com
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
小众软件
小众软件
人人都是产品经理
人人都是产品经理
SecWiki News
SecWiki News
Schneier on Security
Schneier on Security
月光博客
月光博客
博客园_首页
腾讯CDC
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
Google DeepMind News
Google DeepMind News
Cyberwarzone
Cyberwarzone
www.infosecurity-magazine.com
www.infosecurity-magazine.com
AWS News Blog
AWS News Blog
WordPress大学
WordPress大学
AI
AI
酷 壳 – CoolShell
酷 壳 – CoolShell
Hacker News: Ask HN
Hacker News: Ask HN
Attack and Defense Labs
Attack and Defense Labs
IT之家
IT之家
P
Proofpoint News Feed
The Hacker News
The Hacker News
The Cloudflare Blog
Vercel News
Vercel News
Application and Cybersecurity Blog
Application and Cybersecurity Blog
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
Cloudbric
Cloudbric
C
Cisco Blogs
TaoSecurity Blog
TaoSecurity Blog
I
Intezer
Jina AI
Jina AI
雷峰网
雷峰网
阮一峰的网络日志
阮一峰的网络日志
Microsoft Azure Blog
Microsoft Azure Blog
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
A
About on SuperTechFans
B
Blog

博客园 - eFeng.Leung

枚举Exchange Server、SotreGroups和MailStore Single Sign-On for everyone 关于AD编程的一些资料 zz 不同的asp.net web应用程序间共享Session/Application - eFeng.Leung - 博客园 Code Project中几篇关于DNN的文章 Authenticate a user against the Active Directory using the user ID and password User Object User Interface Mapping Lists all entries in the Active Directory Using Active Directory Active Directory and .NET LDAP, IIS and WinNT Directory Services 无法破解的软件注册码算法 SQL2K集群 绑定在 TCP 端口 1433 上失败 使用HTTP访问2003表单登录页 (转) 遭遇 对路径“C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\Temporary ASP.NET Files\aa\……”的访问被拒绝 - eFeng.Leung 网络负载平衡部署 Group Panel 在DataGrid里显示Excel文件数据 鼠标移动,改变datagrid里行的色
FYI: Getting Started with WebDAV
eFeng.Leung · 2006-02-27 · via 博客园 - eFeng.Leung

FYI: Getting Started with WebDAV

WebDAV is a protocol, not an API.  It is an extension of HTTP and provides more request methods to allow us to get information out of Exchange and change information within it. 

Here are some WebDAV samples on MSDN...

310283 How to retrieve and to modify properties on items by using WebDAV in Visual C# .NET
http://support.microsoft.com/default.aspx?scid=kb;EN-US;310283

308373 How to send a meeting request by using WebDAV
http://support.microsoft.com/default.aspx?scid=kb;EN-US;308373

296126 How to create, modify, and delete contact items by using WebDAV (PROPPATCH)
http://support.microsoft.com/default.aspx?scid=kb;EN-US;296126

259849 XWEB: How to Perform Full-Text Searching Using WebDAV
http://support.microsoft.com/default.aspx?scid=kb;EN-US;259849

We have a lot of technologies at our disposal for Messaging developments so it is always important to be reminded of when to use what technology.  Here are some scenarios of when to use WebDAV...

Managed Code and Exchange

If you are writing managed (.NET) code and want to work with data in the Exchange store you will need to know WebDAV.  MAPI and CDO 1.21 are NOT supported from managed code as they were not tested or designed to work in that environment.  CDOEX is supported in managed code but only when the code runs ON the Exchange that hosts the folders and items you are working with.  WebDAV is the only technology that is supported in managed code that will work remotely.

ASP Middle Tier and Kerberos

As I mentioned in a previous post, CDO 1.21 is not supported for use with Kerberos authentication.  This means that if you are running an ASP web application that uses integrated authentication to leverage the current user’s credentials to access resources like their Exchange mailbox or a public folder via CDO 1.21 and this application is hosted on a separate IIS box, you will get a MAPI_E_LOGON_FAILED exception.  Even though the web application may be running in the context of a user that has access to the Exchange resource, since CDO doesn't support Kerberos there is no mechanism for passing credentials from the IIS server to the Exchange server.

This is where WebDAV comes in.  Since WebDAV works simply through HTTP requests and responses you can manage the type of authentication you use at a very granular level.  If you are implementing a middle tier web application that accesses Exchange as a backend store, whether you are using ASP.NET or ASP web applications, you need to use WebDAV.

Non-PC Systems Accessing Exchange Data

I recently had a case with a customer implementing a Java web application hosted on Linux that he wanted to integrate with Exchange.  Our API's won't help in this scenario because they are all based on COM which I understand is hard if not impossible to get Linux to talk to.  WebDAV to the rescue!  Since WebDAV is based on HTTP requests and responses and uses XML to communicate any programmer can communicate with Exchange as long as they have some mechanism for sending requests and reading responses.

...When I talk about Outlook Item types I'll come back to some more areas where WebDAV is particularly helpful.  Truth be told I used to avoid WebDAV like the plague because it wasn't an API set rather a bunch of XML communication back and forth.  However, I've gotten over my initial fears and become more and more a fan of WebDAV every time I use it...

...Here is some of the standard information I send out to customers when they are getting started with WebDAV...

MSDN WebDAV Reference

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/wss/wss/wss_references_webdav.asp

This is a general introduction/reference for WebDAV in Exchange

Properties by Namespace

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/e2k3/e2k3/wss_references_nsproperties.asp

Searching Exchange with WebDAV is all about finding the right property and namespace.  Here is a list of properties organized by namespace.  Use Exchange Explorer (see below) to identify which properties are available on items.

Searching Folders with WebDAV

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/wss/wss/_exch2k_searching_folders_http.asp

These articles give details on searching Exchange with WebDAV.

SQL in the Exchange Store

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/e2k3/e2k3/_exch2k_sql_web_storage_system_sql.asp

This article details the SQL commands available with WebDAV against Exchange and what they do.

Exchange Explorer Download

http://www.microsoft.com/downloads/details.aspx?FamilyID=4AFE3504-C209-4A73-AC5D-FF2A4A3B48B7&displaylang=en

Exchange Explorer is a very helpful tool to view properties on items and folders.  It displays the full name of the properties available on an item along with their values.

Update 1-20-2006: Adding some more links here that are quite relevant...

Be sure to check out my post related to Exchange Store Event Sink programming that covers CDOEX.  It talks in depth about the Exchange store and relates directly to WebDAV.  Lots of good links there.

Here are some more MSDN links that very helpful...

WebDAV Methods

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/e2k3/e2k3/_webdav_methods.asp

It is important to familiarize yourself with these methods in order to understand what functionality you have available to you.

WebDAV Protocol Status Codes

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/e2k3/e2k3/_webstore_http_webdav_protocol_errors.asp

Understand what WebDAV gives back to you if there are errors.

Comment Notification

If you would like to receive an email when updates are made to this post, please register here

You can also stay up to date using your favorite aggregator by subscribing to the CommentRss Feed