如何通过 EWS 托管 API 检查交换会议资源的应用程序模拟权限?

How to check Exchange the Application Impersonation Permission of a meeting resource by EWS managed API?

我想通过应用程序模拟帐户获取会议资源的日历信息。 我需要检查应用程序模拟帐户是否有权从会议资源中获取日历信息。 (据我所知,会议资源可以设置为拒绝应用程序模拟帐户访问)

您不能使用 EWS 做您想做的事情,因为检查基础权限的唯一方法是使用 Exchange 管理 Shell cmdlet。然而,最简单的方法是只处理您使用 EWS 托管 API 进行的 EWS 操作的结果,如果您没有模拟权限,那么您将收到一条错误消息,表明您没有模拟权限。例如

        try
        {
            //EWS request
        }catch(Exception Exception)
        {
            if(Exception is ServiceResponseException)
            {
                switch (((ServiceResponseException)Exception).ErrorCode)
                {
                    case ServiceError.ErrorImpersonateUserDenied:
                        break;
                    case ServiceError.ErrorImpersonationDenied:
                        break;
                    case ServiceError.ErrorImpersonationFailed:
                        break;
                }

            }
        }