// Token: 0x06000D67 RID: 3431 RVA: 0x000596D8 File Offset: 0x000578D8 internal override MailboxSession CreateWebPartMailboxSession(IExchangePrincipal mailBoxExchangePrincipal, CultureInfo cultureInfo, HttpRequest clientRequest) { MailboxSession mailboxSession = MailboxSession.OpenWithBestAccess(mailBoxExchangePrincipal, base.CreateADOrgPersonForWebPartUserBySid(), this.clientSecurityContext, cultureInfo, "Client=OWA;Action=WebPart + Delegate + ViaProxy"); GccUtils.SetStoreSessionClientIPEndpointsFromHttpRequest(mailboxSession, clientRequest); return(mailboxSession); }
// Token: 0x0600191D RID: 6429 RVA: 0x000922A4 File Offset: 0x000904A4 private Folder GetFolderFromPath(string path, bool isPublicFolder) { string[] array = path.Split(new char[] { '/', '\\' }, StringSplitOptions.RemoveEmptyEntries); CultureInfo userCulture = Culture.GetUserCulture(); StoreObjectId storeObjectId = null; StoreSession storeSession = null; OwaStoreObjectIdType objectIdType = OwaStoreObjectIdType.MailBoxObject; try { if (isPublicFolder) { storeSession = PublicFolderSession.OpenAsAdmin(this.userContext.ExchangePrincipal.MailboxInfo.OrganizationId, this.userContext.ExchangePrincipal, Guid.Empty, null, userCulture, "Client=OWA;Action=WebPart + Admin + GetFolderFromPath", null); storeObjectId = this.userContext.PublicFolderRootId; objectIdType = OwaStoreObjectIdType.PublicStoreFolder; } else { storeSession = MailboxSession.OpenAsAdmin(this.owaContext.ExchangePrincipal, userCulture, "Client=OWA;Action=WebPart + Admin + GetFolderFromPath"); GccUtils.SetStoreSessionClientIPEndpointsFromHttpRequest(storeSession, this.owaContext.HttpContext.Request); storeObjectId = this.userContext.GetRootFolderId(this.userContext.MailboxSession); } for (int i = 0; i < array.Length; i++) { object[][] folderIdByDisplayName = this.GetFolderIdByDisplayName(array[i], storeObjectId, storeSession); if (folderIdByDisplayName == null || folderIdByDisplayName.Length == 0) { return(null); } storeObjectId = ((VersionedId)folderIdByDisplayName[0][0]).ObjectId; } } finally { if (storeSession != null) { storeSession.Dispose(); storeSession = null; } } if (storeObjectId == null) { return(null); } return(this.GetFolderFromId(OwaStoreObjectId.CreateFromFolderId(storeObjectId, objectIdType))); }
internal override MailboxSession CreateWebPartMailboxSession(IExchangePrincipal mailBoxExchangePrincipal, CultureInfo cultureInfo, HttpRequest clientRequest) { MailboxSession result; using (DisposeGuard disposeGuard = default(DisposeGuard)) { MailboxSession mailboxSession = MailboxSession.OpenWithBestAccess(mailBoxExchangePrincipal, base.CreateADOrgPersonForWebPartUserBySid(), this.WindowsPrincipal, cultureInfo, "Client=OWA;Action=WebPart + Delegate"); disposeGuard.Add <MailboxSession>(mailboxSession); GccUtils.SetStoreSessionClientIPEndpointsFromHttpRequest(mailboxSession, clientRequest); disposeGuard.Success(); result = mailboxSession; } return(result); }
// Token: 0x06000D66 RID: 3430 RVA: 0x00059670 File Offset: 0x00057870 internal override MailboxSession CreateMailboxSession(IExchangePrincipal exchangePrincipal, CultureInfo cultureInfo, HttpRequest clientRequest) { ExTraceGlobals.CoreCallTracer.TraceDebug(0L, "OwaClientSecurityContextIdentity.CreateMailboxSession"); MailboxSession result; try { MailboxSession mailboxSession = MailboxSession.Open(exchangePrincipal, this.clientSecurityContext, cultureInfo, "Client=OWA;Action=ViaProxy"); GccUtils.SetStoreSessionClientIPEndpointsFromHttpRequest(mailboxSession, clientRequest); result = mailboxSession; } catch (AccessDeniedException innerException) { throw new OwaExplicitLogonException("User has no access rights to the mailbox", LocalizedStrings.GetNonEncoded(882888134), innerException); } return(result); }