Forum
Exchange Server 2010 üzerinde varsayılan olarak açılan her kullanıcı
için outlook anywhere açık gelir. Ancak güvenlik nedenleri ile bu
özelliği kapatmak isteyebilirsiniz.
Bunun için aşağıdaki gibi bir powershell komutu size yardımcı olur
Get-Mailbox –Identity hakanuzuner | Set-CASMailbox -MAPIBlockOutlookRpcHttp:$True
veya tüm kullanıcılar için aşağıdaki komutu kullanabilirsiniz
Get-Mailbox –ResultSize Unlimited | Set-CASMailbox -MAPIBlockOutlookRpcHttp:$True
Eğer
yöneticilere bu izni vermek, ancak diğer kullanıcılara bu izni vermek
istemiyorsanız bu durumda kimlere izin verdiğinizide görmek
isteyebilirsiniz. Bunun için ise gerekli olan powershell aşağıdaki
gibidir
Örneğin Outlook Anywhere özelliği açık olan kullanıcıları listeleyelim
Get-CasMailbox –resultsize unlimited | Select name,MAPIBlockOutlookRpcHttp | Where { $_.MAPIBlockOutlookRpcHttp -like "False" }
Veya Kapalı olanlar
Get-CasMailbox –resultsize unlimited | Select name,MAPIBlockOutlookRpcHttp | Where { $_.MAPIBlockOutlookRpcHttp -like "True" }
Veya
isterseniz bunu OU bazlı yapabilirsiniz. Örneğin müdürler bir OU
altındadır ve siz hangi müdürde bu izin var hangisinde yok bilgisine de
yine aşağıdaki powershell ile ulaşabilirsiniz.
Get-Mailbox
-OrganizationalUnit "OU=mudurler,DC=cozumpark,DC=com" | Get-CasMailbox |
Select name,MAPIBlockOutlookRpcHttp | Where {
$_.MAPIBlockOutlookRpcHttp -like "False" }
Yine OU bazlı bu yetkiyi açıp kapatabiliriz
Get-Mailbox -OrganizationalUnit "OU=mudurler,DC=cozumpark,DC=com" | Set-CasMailbox -MAPIBlockOutlookRpcHttp:$False
Tüm
bunlara rağmen hala kimlerin outlook anywhere ile sisteme bağlandığını
kontrol etmek için ise aşağıdaki powershell komutunu çalıştırın. Bu
komut size IIS log dizinini soracaktır, bu log dizini içerisindeki txt
bazlı loglardan istediğinizi veya tek tek hepsini gösterip bunun
sonucunu da yine csv olarak alabilirsiniz
[System.Reflection.Assembly]::LoadWithPartialName("System.Drawing")
[System.Reflection.Assembly]::LoadWithPartialName("System.windows.forms")
$exFileName = new-object System.Windows.Forms.openFileDialog
$exFileName.ShowHelp = $true
$exFileName.ShowDialog()
$fname = $exFileName.FileName
$mbcombCollection = @()
$FldHash = @{}
$usHash = @{}
$fieldsline = (Get-Content $fname)[3]
$fldarray = $fieldsline.Split(" ")
$fnum = -1
foreach ($fld in $fldarray){
$FldHash.add($fld,$fnum)
$fnum++
}
get-content $fname | Where-Object -FilterScript { $_ -ilike “*MSRPC*” } | %{
$lnum ++
if ($lnum -eq $rnma){ Write-Progress -Activity "Read Lines" -Status $lnum
$rnma = $rnma + 1000
}
$linarr = $_.split(" ")
$uid = $linarr[$FldHash["cs-username"]] + $linarr[$FldHash["c-ip"]]
if ($linarr[$FldHash["cs-username"]].length -gt 2){
if ($usHash.Containskey($uid) -eq $false){
$usrobj = "" | select UserName,IpAddress
$usrobj.UserName = $linarr[$FldHash["cs-username"]]
$usrobj.IpAddress = $linarr[$FldHash["c-ip"]]
$usHash.add($uid,$usrobj)
$mbcombCollection += $usrobj
}
}
}
$mbcombCollection | export-csv –encoding "unicode" -noTypeInformation c:\oareport.csv
Bunu ps1 olarak kayıt edin, çıktı ise C:\ dizinine oareport.csv olarak kayıt olacaktır.
Danışman - ITSTACK Bilgi Sistemleri
****************************************************************
Probleminiz Çözüldüğünde Sonucu Burada Paylaşırsanız.
Sizde Aynı Problemi Yaşayanlar İçin Yardım Etmiş Olursunuz.
Eğer sorununuz çözüldü ise lütfen "çözüldü" olarak işaretlerseniz diğer üyeler için çok büyük kolaylık sağlayacaktır.
*****************************************************************
paylaşım için teşekkürler hakan hocam. gerçekten bazen çok ihtiyaç duyulan bir noktaya değinmişsiniz.
Eyvallah hocam 🙂
Danışman - ITSTACK Bilgi Sistemleri
****************************************************************
Probleminiz Çözüldüğünde Sonucu Burada Paylaşırsanız.
Sizde Aynı Problemi Yaşayanlar İçin Yardım Etmiş Olursunuz.
Eğer sorununuz çözüldü ise lütfen "çözüldü" olarak işaretlerseniz diğer üyeler için çok büyük kolaylık sağlayacaktır.
*****************************************************************
hocam aynı hata ile karşılaştık fakat
PS C:\Users\itmanagement> Get-Mailbox -ResultSize Unlimited | Set=CASMailbox -MAPIBlockOutlookRpcHttp:$True
Get-Mailbox : The term 'Get-Mailbox' is not recognized as the name of a cmdlet, function, script file, or operable prog
ram. Check the spelling of the name, or if a path was included, verify that the path is correct and try again.
At line:1 char:1
+ Get-Mailbox -ResultSize Unlimited | Set=CASMailbox -MAPIBlockOutlookRpcHttp:$Tru ...
+ ~~~~~~~~~~~
+ CategoryInfo : ObjectNotFound: (Get-Mailbox:String) [], CommandNotFoundException
+ FullyQualifiedErrorId : CommandNotFoundException
bu şekilde bir cvp aldım sorun nerde acaba ?
Merhaba,
Bu komutu Exchange Powershell ekranında çalıştırmanız lazım windows powershell değil.
Danışman - ITSTACK Bilgi Sistemleri
****************************************************************
Probleminiz Çözüldüğünde Sonucu Burada Paylaşırsanız.
Sizde Aynı Problemi Yaşayanlar İçin Yardım Etmiş Olursunuz.
Eğer sorununuz çözüldü ise lütfen "çözüldü" olarak işaretlerseniz diğer üyeler için çok büyük kolaylık sağlayacaktır.
*****************************************************************