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

推荐订阅源

PCI Perspectives
PCI Perspectives
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
C
CXSECURITY Database RSS Feed - CXSecurity.com
P
Palo Alto Networks Blog
S
Schneier on Security
Scott Helme
Scott Helme
T
Threat Research - Cisco Blogs
K
Kaspersky official blog
Microsoft Azure Blog
Microsoft Azure Blog
T
The Exploit Database - CXSecurity.com
C
Cybersecurity and Infrastructure Security Agency CISA
T
Tenable Blog
G
GRAHAM CLULEY
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
I
Intezer
D
Docker
月光博客
月光博客
L
Lohrmann on Cybersecurity
Latest news
Latest news
B
Blog
罗磊的独立博客
M
MIT News - Artificial intelligence
S
Securelist
Know Your Adversary
Know Your Adversary
Help Net Security
Help Net Security
Recorded Future
Recorded Future
S
SegmentFault 最新的问题
N
Netflix TechBlog - Medium
T
Threatpost
H
Hacker News: Front Page
K
KPMG report finds enterprise disconnect between AI and its ROI | CIO
人人都是产品经理
人人都是产品经理
F
Fortinet All Blogs
博客园 - Franky
P
Proofpoint News Feed
大猫的无限游戏
大猫的无限游戏
Blog — PlanetScale
Blog — PlanetScale
有赞技术团队
有赞技术团队
博客园 - 【当耐特】
A
About on SuperTechFans
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
T
Tor Project blog
Google Online Security Blog
Google Online Security Blog
Application and Cybersecurity Blog
Application and Cybersecurity Blog
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
Engineering at Meta
Engineering at Meta
Webroot Blog
Webroot Blog
Security Archives - TechRepublic
Security Archives - TechRepublic
Microsoft Security Blog
Microsoft Security 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