Quantcast
Channel: Exchange Server Development forum
Viewing all 7132 articles
Browse latest View live

How to get access to /EWS/Exchange.asmx en Exchange Online?

$
0
0
  • Hi everyone,

    Recently in my company, Exchange has been migrated from Exchange On Premise to Exchange Online.

    I have implemented a .Net application to process mails, sent and move them in a shared Mailbox. After migration my app only receive (401) Unauthorized in any case. When I try to login through Explorer (OWA) there is no problem I login successfully.

    Will I need special permissions over  https://<server>/EWS/Exchange.asmx?

    Will I need register my application in Microsoft Cloud, get a token from app and use OAuth to use Exchange Websrvices Online?

    Will I need implement again my application using Office Developer tools for Visual Studio or using Microsoft Graph?

    Thanks and Regards 


Array problems - including comparing dates with array properties

$
0
0

Firstly, I don't do Powershell often, so please forgive me ... I'm trying to write a script that will write items from the Office 365 audit logs to a CSV file. The intention is for this to happen nightly and store around 30 days worth of data. So every day I intend to get yesterday's data from the logs, add it to what's already in the csv file, then delete anything over 30 days old.

My script is below, I currently have 2 problems: 

Problem 1:  my current script whereby the section that removes the old data is commented out (this is for problem 2) is only resulting in 1 row being returned, I know, from previous iterations of the script there are over 300 rows that should be returned. I'm not sure why only 1 row is being returned when I should be retrieving a full 24 hours worth of data as the steps to remove content is commented out.

Problem 2: At a point in time when my csv file had 300+ rows I was trying to remove old data from the logs (my code that attempts to do this is at the end, currently commented out while trying to fix problem 1). Unfortunately I'm unable to compare the CreationTime propertry to the $DeleteDate variable, I'm not sure how?

I'll add at this point my delete date is set to anything "6 hours old" rather than "30 days old" - that's just while I'm developing the script.

Hopefully my comments explain what I'm trying to do at each step but I'm happy to elaborate...

## Initialise and Connect

$OutputFile = "C:\temp\Audit.csv"
$Username = "username@tenant.ac.uk"

Set-ExecutionPolicy RemoteSigned

$UserCredential = Get-Credential -Credential $Username

$EndDate = Get-Date -Hour 0 -Minute 00 -Second 00
$StartDate = $EndDate.AddDays(-1)
$DeleteDate = $EndDate.AddHours(-6)

$Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://outlook.office365.com/powershell-liveid/ -Credential $UserCredential -Authentication Basic -AllowRedirection

Import-PSSession $Session -AllowClobber


## Import existing data
$ExistingData = import-csv $OutputFile

## Retrieve New data from logs
$AuditOutput = Search-UnifiedAuditLog -StartDate $StartDate -EndDate $EndDate -RecordType PowerBI 

## Expand Properties of log data
$ConvertedAuditOutput = $AuditOutput | Select-Object -ExpandProperty AuditData | ConvertFrom-Json


## Format the log data to match #ExistingData
$FormattedArray = @()
$FormattedArray = $ConvertedAuditOutput | Select-Object CreationTime,UserId,UserType,Operation,Activity,Workload,ItemName,WorkSpaceName,DatasetName,ReportType,ReportName,ObjectID,ClientIP,UserAgent,IsSuccess ##| Export-Csv $OutputFile ## -NoTypeInformation -Append


## Combine existing data and the formatted new data
foreach ($item in $FormattedArray)
{
    $ExistingData += $item
    write-host "Date: " $item -ExpandProperty CreationTime
    ## this statmeent isn't working correctly, it's returning all properties rather than just the CreationTime property
}


## Remove Old
## Here I am trying to NOT add to FinalArray anything where the date is less than $deletedate (should be a selection of the existing data) - this is currently commented out as other parts of my script aren't functioning (Problem 1)

$FinalArray = @()
foreach ($item in $ExistingData)
{
##    [datetime]$DateFormat = [datetime]$item.CreationTime
    
##    if ($DateFormat.CreationTime -ge $DeleteDate)
##    {
        $FinalArray += $item
##    }
}

##Update csv file
$FinalArray | Export-Csv $OutputFile

Bulk Active MFA in Office365 with exceptions

$
0
0

Hi, I recently activated MFA for Office365 authentication, I could'nt actívate to all organization because we needed some exceptions and some domains to stay with out it. So the only available way was doing it using a bulk update using a CSV file, but in my casethat didn't work beacuse I have 5000+user and the webpage timed out.

So finally I found an script and modified it to fit my needs:

$mf= New-Object -TypeName Microsoft.Online.Administration.StrongAuthenticationRequirement
$mf.RelyingParty = "*"
$mfa = @($mf)
Get-MsolUser -All -DomainName "mydomain.com" | Where-Object {$($_.licenses).accountskuid -eq "mydomaincom:STANDARDWOFFPACK_IW_STUDENT"} | Set-MsolUser -StrongAuthenticationRequirements $mfa

So I just change mydomain with any domain or subdomain and I activate the MFA to everybody.

After that I had to go to a bucnh of accounts and manually deactivate the  MFA

So now I need a way to do this or modify the above script to add the expetions so every timae I run it I dont re enable the MFA for the accounts that I already disabled.

Any body has any ideas?

Thank you!

Lotus Notes to Exchange Server 2016 Migration

$
0
0

Hello Team,

we are using Lotus notes mail server. Now we want to migrate to Exchange server smoothly. Can any one suggest us migration process.


FolderId in EWS and EAS

$
0
0

Hi, 

Are the FolderId returned by EWS and EAS for a particular folder of a user will always be same for Well known as well as custom folders?

Regards,

Santhosh I C


Outbound emails gong to users Junk Mail

$
0
0

Multiple off premises users are experiencing our emails going into their Junk Mail folder.

Environment: Exchange 2016 on premises

Mail server: mail.jawsurgeon.com

Certificates: local certificate (installed by exchange), third party GoDaddy certificate valid through 7/2020 ; all certificates marked as valid; certificates bound to back end IIS.

Any help and suggestions really appreciated.

Thanks

Adam


jawsurgeon

throw an exception by using ews managed api: GetAttachments

$
0
0

i try to get attachments by ews managed api, followed article https://docs.microsoft.com/zh-cn/outlook/add-ins/get-attachments-of-an-outlook-item, but throw an exception with message:

找不到方法:“Microsoft.Exchange.WebServices.Data.ServiceResponseCollection`1<Microsoft.Exchange.WebServices.Data.GetAttachmentResponse> Microsoft.Exchange.WebServices.Data.ExchangeService.GetAttachments(System.String[], System.Nullable`1<Microsoft.Exchange.WebServices.Data.BodyType>, System.Collections.Generic.IEnumerable`1<Microsoft.Exchange.WebServices.Data.PropertyDefinitionBase>)”。

i can get email content or unread email by ews managed api successly, could anyone help figure out why it throw exception?

exchange server: 2013, version 15.0(Build 1263.5)

facing exception while updating contact with EWS JAVA API

$
0
0

Hi All,

I am trying to add an API in our project to create/update a contact in exchange using EWS JAVA API's. I am able to create a contact successfully but in update flow, while creating a contact item it is throwing exception for me.

Contact contactItem = Contact.bind(exService, ((Item) resp.getItems().get(0)).getId());

I am trying with bind function and passing existing contact item Id. it fails with exception saying that URL property is null in service object. This same service object I am using for creating new contact and there it is working fine. 

Setting the URL explicitly also does not help and it fails with forbidden exception now. can you please help here if someone has faced same kind of issue before?

Regards

Munish


Microsoft.Exchange.WebServices.Data.ServiceRequestException: The request failed. The underlying connection was closed: Could not establish trust relationship for the SSL/TLS secure channel - Issue occurs at times during mail functionalities

$
0
0

Hi, 

I am using exchange web services in my application for the following functionalities:

- To check if an exchange account is valid

- Send mails

- Sync mails from to/from the server

- Create and sync appointments

The application is working fine at times but there occurs a random exception that reads "Microsoft.Exchange.WebServices.Data.ServiceRequestException: The request failed. The underlying connection was closed: Could not establish trust relationship for the SSL/TLS secure channel" at times. This has occurred for the send mail functionality for a particular user. We have tried setting the TLS version to tls 1.2 but it still returned When I try to connect with the voip, it returns the same TLS/SSL error. Another strange thing I noticed is that I had a voip service in my application and it has stopped working since I started using MSweb services for mail authentication. To ensure its connection with EWS, I skipped the mail check using ews and tried to connect with the voip and it was working fine. I have tested this issue with multiple scenarios and the results point to the same. 

I hope you can help me with it as its an urgently needed solution.

[EWS] Access hybrid public folders with EWS

$
0
0

Our customer has a hybrid Scenario with Exchange on premise Hosting public Folders and O365 having the users, similar to the Scenario here: https://searchwindowsserver.techtarget.com/tip/Access-Exchange-2013-public-folders-in-a-hybrid-setup

In our app we have the O365 user configured, but when we try to Access public Folders using EWS the Reply is "There are no public folder servers available"

Would we have to retrieve the public Folder address via Autodisover from the PublicFolderInformation tag from O365 and use the same user credentials to Access the public Folders on this second Server?
Or would we have to configure a second account with its own user credentials to Access this?

Let's assume I am just using SoapUI or a similar EWS tool and have the O365 user account, how can i Access the public Folder?

Cheers,
Simon

read ipm.post items from .pst files

$
0
0

I am looking for a tool that reads the ipm.post items from a .pst file.

I am using readpst for extracting .pst files on Debian, this tool is failing to read ipm.post items. Is there any tool I can use in my programming to read the ipm.post items also from .pst files?

Stamping archive tag on specific folder via EWS

$
0
0

Hi,

I'm configuring an retentiontag for archiving a specific folder after 2 days.
I'm performing this via EWS.

The goal is to stamp a specific folder (called "TESTFOLDER" that's available within every mailbox), with a personal tag I created.

So far I've modified the script I've found here :
http://blogs.msdn.com/b/akashb/archive/2012/12/07/stamping-archive-policy-tag-using-ews-managed-api-from-powershell-exchange-2010.aspx?CommentPosted=true#commentmessage

1) created a personal tag called "1_Day_move_to_Archive"
2) Changed some settings of the code (EWS version, paths, etc.)
3) configured my account with impersonation rights. (to my own mailbox)
4) Inserted the GUID of the created tag into the script
5) Changed this value "$oFolder.SetExtendedProperty($RetentionFlags, 16)" to "$oFolder.SetExtendedProperty($RetentionFlags, 8)"
16 specifies ExplicitArchiveTag, 8 specifies personaltag >> I tried both settings here

Now when I run the script I don't get any errors thrown, and I get the prompt that the policy is stamped.
When I check afterwards via outlook/owa, I don't see any change however.

I already forced the folder assistant to run, but it also doesn't change anything.

Anyone knows what might be wrong?

 

 


# The script requires the EWS managed API, which can be downloaded here:
# http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=c3342fb3-fbcc-4127-becf-872c746840e1
# This also requires PowerShell 2.0
# Make sure the Import-Module command below matches the DLL location of the API.
# This path must match the install location of the EWS managed API. Change it if needed.

[string]$info = "White"                # Color for informational messages
[string]$warning = "Yellow"            # Color for warning messages
[string]$error = "Red"                 # Color for error messages
[string]$LogFile = "C:\Temp\Log.txt"   # Path of the Log File

function StampPolicyOnFolder($MailboxName)
{
 Write-host "Stamping Policy on folder for Mailbox Name:" $MailboxName -foregroundcolor $info
 Add-Content $LogFile ("Stamping Policy on folder for Mailbox Name:" + $MailboxName)

#Change the user to Impersonate
 $service.ImpersonatedUserId = new-object Microsoft.Exchange.WebServices.Data.ImpersonatedUserId([Microsoft.Exchange.WebServices.Data.ConnectingIdType]::SmtpAddress,$MailboxName);

 #Search for the folder you want to stamp the property on
 $oFolderView = new-object Microsoft.Exchange.WebServices.Data.FolderView(1)
 $oSearchFilter = new-object Microsoft.Exchange.WebServices.Data.SearchFilter+IsEqualTo([Microsoft.Exchange.WebServices.Data.FolderSchema]::DisplayName,$FolderName)
 $oFindFolderResults = $service.FindFolders([Microsoft.Exchange.WebServices.Data.WellKnownFolderName]::MsgFolderRoot,$oSearchFilter,$oFolderView)

if ($oFindFolderResults.TotalCount -eq 0)
 {
       Write-host "Folder does not exist in Mailbox:" $MailboxName -foregroundcolor $warning
       Add-Content $LogFile ("Folder does not exist in Mailbox:" + $MailboxName)
 }
else
 {
       Write-host "Folder found in Mailbox:" $MailboxName -foregroundcolor $info

       #PR_ARCHIVE_TAG 0x3018 – We use the PR_ARCHIVE_TAG instead of the PR_POLICY_TAG
       $ArchiveTag = New-Object Microsoft.Exchange.WebServices.Data.ExtendedPropertyDefinition(0x3018,[Microsoft.Exchange.WebServices.Data.MapiPropertyType]::Binary);

       #PR_RETENTION_FLAGS 0x301D
       $RetentionFlags = New-Object Microsoft.Exchange.WebServices.Data.ExtendedPropertyDefinition(0x301D,[Microsoft.Exchange.WebServices.Data.MapiPropertyType]::Integer);

       #PR_ARCHIVE_PERIOD 0x301E - We use the PR_ARCHIVE_PERIOD instead of the PR_RETENTION_PERIOD
       $ArchivePeriod = New-Object Microsoft.Exchange.WebServices.Data.ExtendedPropertyDefinition(0x301E,[Microsoft.Exchange.WebServices.Data.MapiPropertyType]::Integer);

       #Change the GUID based on your policy tag
       $ArchiveTagGUID = new-Object Guid("{7d71ddd7-061a-473e-8b92-033e126bbcb0}");

       #Bind to the folder found
       $oFolder = [Microsoft.Exchange.WebServices.Data.Folder]::Bind($service,$oFindFolderResults.Folders[0].Id)

       #Same as that on the policy - 16 specifies that this is a ExplictArchiveTag -- EDIT (also tried with value 8 > personal tag)
       $oFolder.SetExtendedProperty($RetentionFlags, 16)

       #Same as that on the policy - Since this tag is disabled the Period would be 0 -- We choose 1, since we want to archive after 1 day
       $oFolder.SetExtendedProperty($ArchivePeriod, 2)

       $oFolder.Update()

       Write-host "Retention policy stamped!" -foregroundcolor $info
       Add-Content $LogFile ("Retention policy stamped!")
 }

 $service.ImpersonatedUserId = $null
}


#Change the name of the folder. This is the folder the properties will be stamped on.
$FolderName = "TESTFOLDER"

Import-Module -Name "C:\Program Files\Microsoft\Exchange\Web Services\2.2\Microsoft.Exchange.WebServices.dll"

$service = New-Object Microsoft.Exchange.WebServices.Data.ExchangeService([Microsoft.Exchange.WebServices.Data.ExchangeVersion]::Exchange2010_SP1)

# Set the Credentials
$service.Credentials = new-object Microsoft.Exchange.WebServices.Data.WebCredentials("MyAccount","MyPassword","MyDomain")

# Change the URL to point to your cas server
$service.Url = new-object Uri("https://owa.customer.int/EWS/Exchange.asmx")

# Set $UseAutoDiscover to $true if you want to use AutoDiscover else it will use the URL set above
$UseAutoDiscover = $false

#Read data from the UserAccounts.txt.
#This file must exist in the same location as the script.

import-csv UserAccounts.txt | foreach-object {
    $WindowsEmailAddress = $_.WindowsEmailAddress.ToString()

    if ($UseAutoDiscover -eq $true) {
        Write-host "Autodiscovering.." -foregroundcolor $info
        $UseAutoDiscover = $false
        $service.AutodiscoverUrl("$WindowsEmailAddress", {$true})
        Write-host "Autodiscovering Done!" -foregroundcolor $info
        Write-host "EWS URL set to :" $service.Url -foregroundcolor $info

    }
    #To catch the Exceptions generated
    trap [System.Exception]
    {
        Write-host ("Error: " + $_.Exception.Message) -foregroundcolor $error;
        Add-Content $LogFile ("Error: " + $_.Exception.Message);
        continue;
    }
    StampPolicyOnFolder($WindowsEmailAddress)
}

 

Getting the free time of the meeting attendees by using EWS API

$
0
0

Hi,

I am newbie to EWS API. I got some problem with getting the free time of the meeting attendees in a given range of time using EWS API (the method is GetUserAvailability).

According to The MSDN Document,

the GetUserAvailability method should return free type CalendarEvent like this:

<FreeBusyView><FreeBusyViewTypexmlns="http://schemas.microsoft.com/exchange/services/2006/types">FreeBusy</FreeBusyViewType><CalendarEventArrayxmlns="http://schemas.microsoft.com/exchange/services/2006/types"><CalendarEvent><StartTime>2014-02-12T00:00:00</StartTime><EndTime>2014-02-13T00:00:00</EndTime><BusyType>Free</BusyType>

^^^^^^^^^^^^^^^^^^^^^^^^

 

</CalendarEvent>

The MSDN document:  htts://docs.microsoft.com/en-us/exchange/client-developer/exchange-web-services/how-to-get-free-busy-information-by-using-ews-in-exchange

My problem is that:

If there are no events in the calendar of the attendee, the GetUserAvailability method will return empty CalendarEvents.

Like this picture show 

https://imgur.com/dIfj0hN

I can not get any free type CalendarEvents although the attendee's calendar shows that he has free time all day.

The exchange mail server version is Exchange Server 2016.

How can I get the meeting attendee's free time in certain time range by using EWS API wrapper(Microsoft.Exchange.WebServices, 15.0.0.0 ,v2.0.50727)?

The following is the test code  (using outlook.com)

using Microsoft.Exchange.WebServices.Data;
using NLog;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace WindowsFormsApp5
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private Logger _logger { get { return LogManager.GetCurrentClassLogger(); } }

        private void button1_Click(object sender, EventArgs e)
        {
            string account = "******** @hotmail.com";
            string password = "mypassword";
            ExchangeService service = new ExchangeService();
            service.Credentials = new Microsoft.Exchange.WebServices.Data.WebCredentials(account, password);
            service.Url = new Uri("https://outlook.live.com/EWS/Exchange.asmx");
            GetUserFreeBusy(service);
        }

        private void GetUserFreeBusy(ExchangeService service)
        {
            string attendee = "******** @hotmail.com";
            List<AttendeeInfo> attendees = new List<AttendeeInfo>();

            attendees.Add(new AttendeeInfo()
            {
                SmtpAddress = attendee,
                AttendeeType = MeetingAttendeeType.Organizer
            });

            AvailabilityOptions availabilityOptions = new AvailabilityOptions();
            availabilityOptions.MeetingDuration = 30;
            availabilityOptions.RequestedFreeBusyView = FreeBusyViewType.FreeBusy;

            GetUserAvailabilityResults freeBusyResults = service.GetUserAvailability(attendees,
                                                                                  new TimeWindow(DateTime.Now.AddDays(-20), DateTime.Now.AddDays(1)),
                                                                                     AvailabilityData.FreeBusy,
                                                                                     availabilityOptions);


            foreach (AttendeeAvailability availability in freeBusyResults.AttendeesAvailability)
            {
                _logger.Error("AttendeesAvailability.CalendarEvents count " + availability.CalendarEvents.Count);
                foreach (CalendarEvent calendarItem in availability.CalendarEvents)
                {
                    _logger.Error("Free/busy status: " + calendarItem.FreeBusyStatus);
                    _logger.Error("Start time: " + calendarItem.StartTime.ToString("yyyyMMdd HHmmss"));
                    _logger.Error("End time:  " + calendarItem.EndTime.ToString("yyyyMMdd HHmmss"));

                }
            }
        }
    }
}

Please help me , Thanks!



                               

decommission of existing Exchange Journal mailbox servers.

$
0
0

we have hybrid environment (exchange 2010 & Office365).

We have started using SMTP archiving so please let me know how we can start working on decommission of existing Exchange Journal mailbox servers?

Exchange 2013 EWS 401 Unauthorized

$
0
0

Hi Everyone, 

since three weeks i am recieving from some application such as Mailstore (Mailarchiver) error msgs stating that EWS is not accepting username and password of my domain. 

till then was everything allright, i mean i have installed this software 8 Months before and was working perfectly, now my colleuge He has a MACbook with Outlook for mac is also unable to login or to configure outlook with his Email, 

i have double checked ews autherization everything is the same as before, even i restored the Exchange from an old backup checked the configuration, but like its hanging something or some thing blocks, 

when i try to call https://mail.mydomain.com/ews/exchange.asmx comes the login window, but when i give my admin account login info, comes again and again. 

have already checked the iis log file there but i couldnt found something which helped me come up whith this bloody error.

Please Help

Jalal


OWA file to a PST

$
0
0

My users are using owa to access their mail box. Now i want to install third party client software. If i get the mailbox as PST file it could solve my issue. please assist.

Thanks

Karthik

many emails are being landed in junk folder and getting duplicated 5-6 times in shared mailbox 2010

$
0
0
we are on Hybrid environment (office 365 & Exchange 2010). In a on-premise shared mailbox, many emails are being landed in junk folder and getting duplicated 5-6 times. shared mailbox having around 2lacs emails now and mailbox getting full. 10-11 users are accessing this mailbox and it is critical mailbox. please suggest how we can fix this issue. like thought mfcmapi etc?

Connecting to exchange server using EWS

$
0
0

Hi,

We have an EWS exchange client that works fine if it uses the Autodiscovery method for the exchange service and everything works fine. However, for some servers that wish to connect to Autodiscovery is not enabled, and we need to be able to supply the end-point and the domain ourselves. How do we go about doing this? Is there an example of this for EWS.

The following works:

ExchangeService service = new ExchangeService(ExchangeVersion.Exchange2010_SP2);

ExchangeCredentials credentials = new WebCredentials(emailpassword);

service.setCredentials(credentials);

try {

service.autodiscoverUrl(email,new TestAutodiscoverRedirectionUrlImpl());

} catch (Exception e) {

Assert.fail("Exception: "+ e.getLocalizedMessage());

}

The following does is what I am trying to do:

ExchangeService service = new ExchangeService(ExchangeVersion.Exchange2010_SP2);

ExchangeCredentials credentials = new WebCredentials(email,

password);

service.setCredentials(credentials);

        try {

            service.setUrl(new URI("https://exchange-server.com/domain/EWS/Exchange.asmx"));

        } catch (URISyntaxException e) {

            e.printStackTrace();

        }

The above fails with error:

java.lang.AssertionError: Exception: The request failed. sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target

at org.testng.Assert.fail(Assert.java:94)

at clarius.ews.test.TestEwsConnection.testConnection1(TestEwsConnection.java:113)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

at java.lang.reflect.Method.invoke(Method.java:601)

at org.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:80)

at org.testng.internal.Invoker.invokeMethod(Invoker.java:714)

at org.testng.internal.Invoker.invokeTestMethod(Invoker.java:901)

at org.testng.internal.Invoker.invokeTestMethods(Invoker.java:1231)

at org.testng.internal.TestMethodWorker.invokeTestMethods(TestMethodWorker.java:128)

at org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:111)

at org.testng.TestRunner.privateRun(TestRunner.java:767)

at org.testng.TestRunner.run(TestRunner.java:617)

at org.testng.SuiteRunner.runTest(SuiteRunner.java:334)

at org.testng.SuiteRunner.runSequentially(SuiteRunner.java:329)

at org.testng.SuiteRunner.privateRun(SuiteRunner.java:291)

at org.testng.SuiteRunner.run(SuiteRunner.java:240)

at org.testng.SuiteRunnerWorker.runSuite(SuiteRunnerWorker.java:52)

at org.testng.SuiteRunnerWorker.run(SuiteRunnerWorker.java:86)

at org.testng.TestNG.runSuitesSequentially(TestNG.java:1203)

at org.testng.TestNG.runSuitesLocally(TestNG.java:1128)

at org.testng.TestNG.run(TestNG.java:1036)

at org.testng.remote.RemoteTestNG.run(RemoteTestNG.java:111)

at org.testng.remote.RemoteTestNG.initAndRun(RemoteTestNG.java:204)

at org.testng.remote.RemoteTestNG.main(RemoteTestNG.java:175)


We have studied the following:

http://exchangeserverpro.com/exchange-server-2013-ssl-certificates/
http://exchangeserverpro.com/ssl-requirements-for-exchange-when-certificate-authorities-wont-issue-certificate/
http://blogs.msdn.com/b/nadyne/archive/2009/11/26/q-a-how-do-i-fix-the-unable-to-establish-a-secure-connection-issue-in-entourage-mac.aspx

I cannot find a way to overcome this - for example, is there a way to find out what the root ca is of the exchange server and create a certificate with that root ca and install this on the client? Or, is it possible for the client to "trust" the server anyway and skip the server certificate validation on the client side?

We are trying to establish SSL connection to an exchange server without having to install the server's certificate on the client's trust store.

Thanks.

Hashtable-to-Object conversion is not supported

$
0
0

I am trying to export a list of all ActiveSync devices in our Office 365 tenant. I found the following script that seems to do exactly what I am wanting.

https:  gallery.technet.microsoft.com/office/List-all-ActiveSync-e76ede25

When this part runs

$UserList = Get-CASMailbox -Filter {hasactivesyncdevicepartnership -eq $true -and -not displayname -like "CAS_{*"} | Get-Mailbox
$UserList | foreach { Get-ActiveSyncDevice -Mailbox $_} | sort-object -property "UserDisplayName" | select-object 
("UserDisplayName","DeviceId","DeviceType","DeviceModel","DeviceOS","FirstSyncTime") | Export-cliXML $OutputXML

I get this error

Cannot process argument transformation on parameter 'Mailbox'. Cannot convert value "User Name" to type
"Microsoft.Exchange.Configuration.Tasks.MailboxIdParameter". Error: "Cannot convert hashtable to an object of the following type:
Microsoft.Exchange.Configuration.Tasks.MailboxIdParameter. Hashtable-to-Object conversion is not supported in restricted language mode or a Data section."
    + CategoryInfo          : InvalidData: (:) [Get-ActiveSyncDevice], ParameterBindin...mationException
    + FullyQualifiedErrorId : ParameterArgumentTransformationError,Get-ActiveSyncDevice
    + PSComputerName        : pod51030psh.outlook.com

I am new to PowerShell and Office 365, so any help is appreciated.

Failed to bind an existing Contact Item

$
0
0

Hi All,

I am trying to update a contact from my application using EWS JAVA API. For that I am first binding an existing contact Item by providing ItemId. This internally calls GetItem Request to EWS to get the item details. 

This GetItem API is failing for me with forbidden error (403). it is failing with Access Denied.

The same API is working fine for Contact Group. Can you guys please give me any clue how can i troubleshoot his or what I might be doing wrong? is there any thing special to configure with Contact Item?

Regards

Munish

Viewing all 7132 articles
Browse latest View live


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>