28 marca 2020

Office 365 - problemy ze spamem

Wysyłając pocztę ze skrzynek na Office 365 czasem ze zdziwieniem orientujemy się, że trafia ona do spamu. Niestety, pomagając administratorowi opublikować niezbędne dla Exchange Online rekordy, Microsoft nadal podaje tylko 3 rekordy - MX, SPF i autodiscover. Już jakiś czas temu publikowałem kilka postów o dodatkowych metodach zabezpieczania poczty - DKIM oraz DMARC. Od tego czasu zdecydowana większość firm używa już tych mechanizmów. Warto poświęcić kilka minut, żeby skonfigurować je dla swojej organizacji Office 365. O ile konfiguracja DMARC to tylko dodanie rekordu do DNS (przynajmniej na początku), to konfiguracja DKIM wymaga jeszcze włączenia na poziomie Exchange Online. W artykule https://pepugmaster.blogspot.com/2016/03/walka-ze-spamem-spf-dkim-dmarc.html opisałem konfigurację w Office 365, jednak ostatnio zaważyłem, że dla własnych domen, obsługiwanych w Office 365 możliwość włączenia w webowym panelu administracyjnym, zarówno Exchange Admin Center, jak i https://protection.office.com/dkim została ukryta.
Funkcjonalność nie jest zablokowana, ale jak wiele zaawansowanych funkcji dostępna tylko w powershell. Wystarczy z poziomu modułu administracyjnego Exchange Online wykonać komendę:
new-DkimSigningConfig -Identity -KeySize 2048 -Enabled $true
Jeżeli w DNS dla naszej domeny nie dodaliśmy niezbędnych rekordów, funkcjonalność zostanie skonfigurowana, ale nie będzie włączona, o czym zostaniemy poinformowani odpowiednim komunikatem:




Jeżeli uzupełnimy/poprawimy rekordy, możemy włączyć zabezpieczenie domeny komendą:
set-DkimSigningConfig -Identity lab.pepug.org -Enabled $true.
I nasza poczta będzie bardziej wiarygodna.

25 marca 2020

Podstawy automatyzacji w Office 365 dla EDU

Kontynuując omawianie tematów poruszanych na grupach dyskusyjnych dotyczących pytań i problemów związanych z wdrażaniem Office 365 w Edukacji, chciałem tym razem poruszyć temat automatyzacji niektórych zadań przy pomocy Powershella. Temat przygotowania swojego komputera do zarządzania środowiskiem Office 365 poruszałem na tym blogu już kilkakrotnie, więc żeby się nie powtarzać zachęcam do lektury tych artykułów:
Oczywiście moduły się zmieniają, pojawiają się nowe (np. całkowicie odświerzony moduł dla Exchange Online), inne wychodzą z użycia. Warto więc co jakiś czas sprawdzać nowości w tym zakresie czy chociażby co jakiś czas uruchomić komendę update-module.
Kilka typowych wyzwań, przed którym staje administrator szkolnej instancji Office 365 to:
  1. Zakładanie użytkowników i przypisywanie im licencji
  2. Resetowanie haseł użytkownikom.
  3. Tworzenie zespołów Teams.
  4.  Przypisywanie użytkownikom polityk.
Przedstawię tu kilka przykładów, dla powyższych zagadnień:

1. Zakładanie użytkowników i przypisywanie im licencji

Jak założyć wielu użytkowników, np wszystkich nauczycieli lub wszystkich uczniów? Najlepiej byłoby (ze względu na stan epidemii i konieczność wdrożenia w jak najkrótszym czasie) utworzyć dla nich konta skryptem i dodatkowo wysłać im loginy i hasła początkowe na już znany adres. Po pierwsze potrzebujemy plik csv, z listą użytkowników. Warto pamiętać, że powershell domyślnie akceptuje "," jako znak przystankowy, a dla polskich ustawień regionalnych Microsoft Excel najczęściej tworzy taki plik z polami rozdzielonymi ";" - jest to zaznaczone w przykładowym skrypcie. Żeby konto miało od razu przypisaną licencję, dobrze jest to również załatwić w naszym skrypcie. W pierwszej kolejności potrzebujemy się zalogować do naszej instancji Office 365 (tzw. tenanta) i sprawdzić identyfikatory licencji (niestety w każdej instancji jest dodatkowo doklejany id tenanta, czy mamy taką zbitkę - konsagedu:STANDARDWOFFPACK_STUDENT. W tym wypadku konsagedu jest identyfkatorem mojej testowej organizacji Office 365 (jak widać na obrazku).






Jaką wartość wpisać do skryptu sprawdzamy komendą Get-MsolAccountSku. Standardowo powinniśmy mieć przypisaną do naszej organizacji licencję A1 dla nauczycieli i A1 dla uczniów (chyba że aktywowaliśmy inne licencje np. do testów). Oczywiście licencje możemy przypisać później, po utworzeniu grup dla poszczególnych klas i nauczycieli. Przypisanie licencji do grup jest realizowane bardzo prosto w portalu administracyjnym Azure AD w zakładce licencje.
Następnie listę nauczycieli/uczniów wyeksportowaną z zewnętrznego źródła importujemy z pliku csv. Plik powinniśmy uzupełnić o kolumnę UserPrincipalName (nie może być w niej polskich znaków), czyli nazwę logowania użytkownika do naszej organizacji Office. Ze względu na RODO dla uczniów nie powinno to być ImieNazwisko, ponieważ w połączeniu ze szkolną domeną stanowi już dane osobowe. Może to być np. identyfikator z dziennika elektronicznego. Jeżeli chcemy wysłać informacje mailem to musimy również wypełnić kolumnę email, która będzie przypisywana do pola Alternatywny Email w Azure AD. Warto również pamiętać, że jeżeli chcemy wysyłać maile ze skryptu, to musimy się uwierzytelnić i użyć portu 587. Skrypt będzie wyglądał np. tak:

# Podajemy poświadczenia administracyjne i łączymy się z chmurą
$cred = get-credential
Connect-MsolService -Credential $cred

# podajemy nazwę licencji dla ucznia
$StudentsLicense = 'konsagedu:STANDARDWOFFPACK_STUDENT'

# importujemy listę uczniów z pliku csv w postaci
# UserPrincipalName;DisplayName;Imie;Nazwisko;email;telefon
# Musimy wskazać znak rozdzielający, jeżeli plik csv ma kolumny rozdzielone
# innym znakiem niż ,

$AllOffice365Students = Import-CSV D:\Scripts\naglowek.csv -Delimiter ";"

# dla każdego wiersza z pliku csv wykonujemy akcję
foreach ($Student in $AllOffice365Students) {
    # tworzymy nowe konto w usłudze Office 365
    $O365student = New-MsolUser -UserPrincipalName $Student.UserPrincipalName `
         -AlternateEmailAddresses $Student.email -DisplayName $Student.DisplayName `
         -FirstName $Student.Imie -LastName $Student.Nazwisko -mobilePhone $Student.telefon `
         -UsageLocation PL -PreferredLanguage PL-pl -PasswordNeverExpires $true `
         -StrongPasswordRequired $true
    # przypisujemy licencję
    Set-MsolUserLicense -UserPrincipalName $Student.UserPrincipalName `
         -AddLicenses $Studentslicense

    # pobieramy dane po utworzeniu konta
    $mail = $Student.email
    $pwd = $O365student.Password
    $stu = $Student.UserPrincipalName
    $body = "Utworzono konto w systemie Office 365 o nazwie $stu Haslo tymczasowe: $Pwd"
    # wysyłamy maila z hasłem na alternatywny adres uzytkownika
    Send-MailMessage  -SmtpServer smtp.office365.com -usessl -Credential $cred `
          -Port 587 -To "$mail" -From "admin@konsagedu.onmicrosoft.com" `
          -Subject "Office 365 - nowe konto" -Body $body -Encoding UTF8 -BodyAsHtml
}
Kod skryptu dostępny na moim githubie.
Id licencji i konto administratora  oczywiście w skrypcie jest powiązanie z moją organizacją testową. Uwaga. Jeżeli dla administratora włączyliśmy uwierzytelnianie wieloskładnikowe (MFA), to do wysłania maila musimy użyć hasła aplikacyjnego, a nie tego, którym się normalnie logujemy. UWAGA: od początku marca domyślnie organizacje Office 365 mają włączone tzw. domyślne ustawienia zabezpieczeń, które wymuszają MFA. Jeżeli uznamy, że jest to dla uczniów i nauczycieli zbyt uciążliwe możemy to wyłączyć w portalu administracyjnym Azure AD.

2. Resetowanie haseł użytkownikom

W przypadku sytuacji, gdy musimy zresetować hasło grupie użytkowników, możemy postąpić bardzo podobnie - zaimportować listę użytkowników z pliku csv, tym razem wystarczy nam nazwa użytkownika czyli UserPrincipalName i alternatywny adres mailowy. Czyli postępujemy podobnie:

# Podajemy poświadczenia administracyjne i łączymy się z chmurą
$cred = get-credential
Connect-MsolService -Credential $cred

$Pwd = 123zxcASD
# importujemy listę uczniów z pliku csv w postaci
# UPN,email

$AllOffice365Students = Import-CSV D:\Scripts\naglowek.csv

# dla każdego wiersza z pliku csv wykonujemy akcję
foreach ($Student in $AllOffice365Students) {
    Set-MsolUserPassword -UserPrincipalName $Student.UPN -NewPassword $Pwd `
      -ForceChangePassword $True

    # pobieramy dane po utworzeniu konta
    $mail = $Student.email
    $stu = $Student.UPN
    $body = "Zresetowano haslo w systemie Office 365. Haslo tymczasowe: $Pwd"

    # wysyłamy maila z hasłem na alternatywny adres uzytkownika
    Send-MailMessage  -SmtpServer smtp.office365.com -usessl -Credential $cred `
-Port 587 -To "$mail" -From "admin@konsagedu.onmicrosoft.com" `
-Subject "Office 365 - zmiana hasla" -Body $body -BodyAsHtml
}
Kod skryptu dostepny na moim githubie.

3. Tworzenie zespołów Teams

Jeżeli chodzi o zakładanie zespołów w Teams. to już niedługo będzie to można zrobić z użyciem modułu MicrosoftTeams, jednak jak na razie cmdlet New-Team nie obsługuje atrybutu Template, który pozwala nam wybrać szablon klasy lub personelu. Teraz możemy to zrobić z użyciem Graph API. Przykładowy skrypt udostępnili koledzy na githubie grupy Microsoft 365  User Group Poland - https://github.com/Microsoft-365-User-Group-Poland/Skrypty

4. Przypisywanie użytkownikom polityk

Wiele ustawień zarówno bezpieczeństwa jak i funkcjonalnych można przypisać wielu użytkownikom Office 365 poprzez utworzenie i przypisanie odpowiednik polityk (określanych również jako polisy). Przypisywanie użytkownikom wszystkich przydatnych polityk to temat na osobny artykuł - w zależności od obszaru funkcjonalnego, dla którego polityki mają być przypisywane, to konfigurujemy je z użyciem różnych modułów:

  • polityki związane z hasłami - moduł AzureAD.
  • polityki związane ze skrzynką pocztową - moduł Exchange Online (lub nowy moduł ExchangeOnlineManagement).
  • polityki dotyczące Teams - moduł MicrosoftTeams (chociaż niektóre polityki są konfigurowane w module Skype for Business Online), etc.
Myślę, że ciekawym przypadkiem przypisywania polityk może być ograniczanie uprawnień uczniom w Teams, poprzez tzw. Policy Packages, czyli pakiety polityk. Jak sama nazwa wskazuje, pakiet polityk opisuje grupę zasad zarówno dla komunikacji w ramach chatów, spotkań, używania aplikacji, połączeń głosowych - słowem wszystkich obszarów współpracy w ramach aplikacji Micosoft Teams. W celu zaaplikowania pakietu dla wszystkich uczniów w jednym kroku, musimy odfiltrować konta z przypisaną licencją ucznia.
W tym celu dla odmiany użyję modułu AzureAD. Wyświetlę licencje dostępne w moim tenancie EDU i odfiltruję użytkowników z przypisaną taką licencją. Id licencji sprawdzę komendą get-AzureAdSubscribedSku:





Mając ID mogę użyć filtra przygotowanego z jego pomocą
$students = Get-AzureADUser -All $true | Where-Object {($_.assignedLicenses).SkuId `
  -contains "314c4481-f395-4525-be8b-2ec4bb1e9d91"}.
Teraz jeszcze tylko sprawdzę, jakie pakiety polis są dostępne w moim tenancie












I można już uruchomić w pętli przypisanie odpowiedniej paczki (np. dla licealistów będzie to Education_SecondaryStudent).
foreach ($student in $students) {Grant-CsUserPolicyPackage -Identity $student.UserPrincipalName `
   -PackageName Education_SecondaryStudent }

Taką samą pętlą możemy sprawdzić, czy polisy package został przypisany poprawnie:
foreach ($student in $students) {Get-CsUserPolicyPackage -Identity $student.UserPrincipalName }
Oczywiście ustawienia polis w ramach pakietów możemy modyfikować bądź też tworzyć własne.
UPDATE:
W dokumentacji Microsoft Teams dla EDU pojawił się rozbudowany artykuł z przykładami przypisywania polis, odpinania polis i powiązanych operacji. Warto przeczytać jako uzupełnienie tego artykułu.

22 marca 2020

Czy zakładając Office 365 dla zdalnego nauczania trzeba przełączyć pocztę?

Kolejne pytanie, jakie pojawia się na grupach dyskusyjnych w kontekście zdalnego nauczania, to kwestia poczty elektronicznej. Uruchamiając usługę Office 365, automatycznie mamy prawo do korzystania z usługi Exchange Online, która integruje się z innymi usługami Office 365. Domyślnie, jeżeli nie wskażemy własnej domeny pocztowej, skrzynki są zakładane w domenie takiej, jak nazwa naszego tenanta, np. szkola.onmicrosoft.com.
Czy te skrzynki są nam potrzebne? Organizując spotkania w Teams możemy użyć aplikacji Outlook do zapraszania na spotkania/lekcje (po zainstalowaniu klienta Teams na komputerze, w Outlooku pojawia się specjalny dodatek). Warto również pamiętać o RODO. Tworząc skrzynki dla nauczycieli i uczniów ograniczamy przesyłanie materiałów do obrębu tej samej usługi, możemy również oznaczać dokumenty zawierające treści wrażliwe, a nawet weryfikować dostęp do tych dokumentów. Sam o tym mówiłem jakiś czas temu na prezentacji, dostępnej na Youtube. Warto pamiętać, że zakładając skrzynki pocztowe dla uczniów, żeby być w zgodzie z RODO adres pocztowy ucznia nie powinien być zbudowany z jego imienia i nazwiska, ale lepiej użyć jest identyfikatora z dziennika elektronicznego (jest on unikalny w danej szkole).
Kolejną kwestią jest fakt, że nie wszystkie placówki oświatowe mają spójnie systemy poczty elektronicznej dla wszystkich pracowników, cześć używa do komunikacji systemy elektronicznego dziennika jak np. Librus czy Vulcan. Mając usługę Office 365 można tą sytuację zmienić, zwłaszcza, że skrzynki tworzone są z limitem 50GB (a w płatnych planach A3 i A5 może być nawet więcej).
Zupełnie innym tematem jest migracja z obecnego systemu pocztowego. Chociaż kreatory są coraz lepsze i bardziej przyjazne dla użytkownika, to w zależności od typu używanego systemu migracja może być zadaniem czasami nawet bardzo skomplikowanym. Jest on dobrze udokumentowany na stronach Microsoft, np. tutaj - https://docs.microsoft.com/en-us/exchange/mailbox-migration/mailbox-migration. Realizując migracje Exchange przez ostatnie 20 lat również często wspominałem o tych zagadnieniach na tym blogu, spotkaniach PEPUG czy też konferencjach. Warto pytać na forach dyskusyjnych, w związku z obecną sytuacją wiele osób bezpłatnie pomaga szkołom przy takich zadaniach.

20 marca 2020

Jak zablokować możliwość wyłączania mikrofonu organizatorowi spotkania w Teams?

Żeby nie przekształcić jednego posta w książkę postanowiłem rozbić kolejne zagadnienia na oddzielne posty. Jednym z pytań, na które ostatnio się często natykam jest kwestia blokowania mikrofonu przez uczestników spotkania, co oczywiście nie powinno mieć miejsca, ale w nauczaniu na odległość może się zdarzyć.
Jak temu zapobiegać? Odpowiedź jest bardzo prosta, chociaż realizacja nie tak oczywista. Po prostu organizator musi zdefiniować opcje danego spotkania, wskazując, że tylko organizator jest prezenterem (ewentualnie konkretne wskazane osoby). W trakcie spotkania organizator może zawsze zmienić dla konkretnego uczestnika rolę na prezentera. Jak ustawić opcje spotkania? Tworząc nowe spotkanie Teams odpowiedź nie jest wcale taka oczywista. W przypadku dodatku do Outlooka, kiedy tworzymy nowe spotkanie, przycisk Opcje spotkania jest dostępny, jednak kiedy tworzymy spotkanie w kalendarzu klienta desktopowego Teams lub klienta webowego nadal takiej opcji nie ma. Dopiero kiedy utworzymy spotkanie i klikniemy w jego właściwości, zobaczymy na prawo od strefy czasowej pozycję "Opcje spotkania", jak widać na poniższym rysunku. Po wybraniu tej opcji otworzy nam się w przeglądarce (również dla klienta desktopowego) strona, na której możemy ustawić/zmienić dwie opcje spotkania - "Kto może ominąć poczekalnię" oraz "Kto może prezentować". Domyślnie wszyscy uczestnicy spotkania mogą prezentować, mogą równocześnie wyłączać mikrofon innym uczestnikom spotkania. Osoby o statusie uczestnika mogą wyłączać mikrofon tylko sobie.



























18 marca 2020

Marcowe poprawki dla Exchange

Kolejny kwartał mija i pojawiła się planowo następna partia aktualizacji dla Exchange, ogłoszona na blogu zespołu produktowego. Jak zwykle tylko dwie ostatnie wersje Exchange zostały uwzględnione w cyklicznych poprawkach:
Aktualizacja dla Exchange 2019 rozwiązuje problem z wyszukiwaniem online na podstawie fragmentów słów, poprawia skrypt do włączenia MCDB oraz optymalizuje kalkulator planowania Exchange 2019. Jeżeli aktualizujemy Exchange z wersji co najmniej CU2, to nie musimy aktualizować lasu AD. W przeciwnym przypadku jest taka konieczność, wykonujemy więc komendę setup /preparead. Dodatkowo należy pamiętać o odpowiedniej wersji .Net Framework (4.8) i Visual C++ Runtime 2012.
W przypadku CU16 dla Exchange 2016 zmian jest mniej, ale warunki instalacji są podobne. Jeżeli aktualizujemy z wersji wcześniejszej niż CU13, to również powinniśmy wykonać setup /preparead. Również wymagany jest .Net Framework 4.8 i Visual C++ Runtime 2013.
Dodam jeszcze, że oba pakiety Cumulative Updates zawierają krytyczne poprawki bezpieczeństwa, o których pisałem kilka tygodni temu.

15 marca 2020

Praca zdalna w czasie kryzysu

Co najmniej od kilku dni cała Polska a nawet świat w dużym stopniu przeszedł na pracę zdalną. Ja też kolejne kilka (albo i więcej) dni spędzę w domowym biurze. Przy okazji śledzę i uczestniczę w wielu dyskusjach na temat możliwości pracy zdalnej, a zwłaszcza nauczania na odległość. Dla mnie odpowiedź jest oczywista - od wielu lat wdrażam i używam Skype for Business i Microsoft Teams, ale wiele osób ma wątpliwości, jakie rozwiązanie wybrać i czy będzie ono spełniać wszystkie wymogi funkcjonalne. Wiele pytań dotyczących Office 365 i Microsoft Teams powtarzanych jest na wielu forach i grupach dyskusyjnych, więc stwierdziłem, że może warto podsumować te pytania i rozwiąć przy okazji kilka mitów.
Pytanie 1. Jakie bezpłatne narzędzie zapewni efektywne nauczanie na odległość?
Jak dla mnie najlepszym wyborem jest Microsoft Teams. Microsoft przypomina o bezpłatnym pakiecie Office 365 dla Edukacji, podając jednocześnie instrukcję jak szybko uruchomić subskrypcję edukacyjną - http://aka.ms/zdalnanauka. Plan edukacyjny A1 co prawda nie zawiera pełnego pakietu narzędzi biurowych, ale jest w nim OneNote w wersji przystosowanej do współpracy w ramach klas i oczywiście Microsoft Teams.
Pytanie 2. Ile trwa uruchomienie Office 365 dla Edukacji i jakie warunki trzeba spełniać?
Wystarczy zarejestrować się w witrynie Office 365 dla Edukacji http://aka.ms/Office365edupl, zgodnie z instrukcją opublikowaną w odpowiedzi na pytanie 1, wypełnić profil organizacji, a następnie wysłać z portalu administracyjnego usługi wniosek do pomocy technicznej, wpisując w treści informację - weryfikacja szkoły oraz link do strony internetowej. Weryfikacja powinna zostać wykonana w 48 godzin.
















Po zweryfikowaniu można dodać pełną wersję licencji dla nauczycieli i dla uczniów, jednak od razu po zarejestrowaniu usługi automatycznie przypisywane są licencje A1 w wersji ewaluacyjnej na 6 miesięcy. Tak że możemy konfigurować usługi nie czekając na zakończenie weryfikacji.
















Kto może skorzystać z tej oferty? Szkoły i uczelnie wyższe, zarówno państwowe i prywatne, biblioteki i muzea publiczne, biura administracyjne instytucji edukacyjnych. Więcej informacji można znaleźć na stronie licencji grupowych Microsoft.
Pytanie 3. Jak skonfigurować i używać Microsoft Teams?
Dobrym początkiem jest na pewno portal Zdalna Nauka, wymieniony w odpowiedzi 1. Ponadto dobry poradnik konfiguracyjny przygotowali koledzy z polskiego biura Microsoft - Uruchomienie Teams.
Pytanie 4. Dla nauczycieli Teams działa, a dla uczniów nie, kedy zacznie?
Problem wynika z małej zaszłości historycznej - dla nauczycieli jest włączony domyślnie (w planach komercyjnych domyślnie dla wszystkich pracowników), a dla uczniów nie. Żeby to poprawić, należy w starej wersji portalu administracyjnego wejść w ustawienia i dla typu licencji/użytkownika "Education - Student" włączyć usługę (obraz poniżej). Łatwo to przeoczyć, bo domyślnie konsola pokazuje ustawienia dla nauczyciela - "Education - Faculty and Staff"





















Pytanie 5. Kto może wziąć udział w spotkaniu Microsoft Teams?
W zasadzie każdy, kto dostanie zaproszenie, jeżeli zabezpieczenia naszej organizacji tego nie zablokują. Administrator organizacji może nawet pozwalać na prezentowanie treści anonimowym uczestnikom spotkania. Mając zaproszenie na spotkanie (a w zasadzie link do spotkania), wystarczy nam przeglądarka - najlepiej Chrome lub nowy Edge, wykorzystujący silnik Chromium, co pozwoli nam wykorzystać optymalnie dostępne opcje, np. integrację audio/video. Przy dołączeniu pierwszy raz do spotkania Teams, przeglądarka spyta nas o prawo do użycia mikrofonu i kamery, a potem będziemy mogli uczestniczyć w spotkaniu. Używając innych przeglądarek, możemy mieć problemy z niektórymi funkcjami.

Odpowiedzi na kolejne pytania będę uzupełniał na bieżąco. Jeżeli odpowiedź będzie dłuższa, pojawi się jako oddzielny post.
Jak zablokować możliwość wyłączania mikrofonu organizatorowi spotkania w Teams?

02 marca 2020

Poprawki bezpieczeństwa dla Exchange Server

Chociaż od dnia publikacji najnowszych poprawek bezpieczeństwa dla Exchange Server minęło już kilkanaście dni, zorientowałem się właśnie, że nie opublikowałem informacji o nich na blogu, dlatego też nadrabiam zaległości. Poprawki adresują podatności, opisane w biuletynach bezpieczeństwa:
  • CVE-2020-0692: Microsoft Exchange Server Elevation of Privilege Vulnerability
  • CVE-2020-0688: Microsoft Exchange Memory Corruption Vulnerability
  • KB4540267 MSExchangeDelivery.exe or EdgeTransport.exe crashes in Exchange Server 2013 and Exchange Server 2010

O ile pierwsze z zagrożeń dotyczy wersji systemu począwszy od Exchange 2013, to dwa kolejne mogą umożliwiać również przejęcie kontroli nad systemami w wersji Exchange 2010. W ten sposób powstał RU30 dla Exchange 2010 SP3. Warto przeczytać powyższe artykuły, żeby przekonać się, że na czym polegają poszczególne zagrożenia. Poniżej lista aktualizacji:
Wersja Exchange

Build
Artykuł KB
Lokalizacja poprawki
Exchange 2019 CU4
15.2.529.8
Exchange 2019 CU3
15.2.464.11
Exchange 2016 CU15
15.1.1913.7
Exchange 2016 CU14
15.1.1847.7
Exchange 2013 CU23
15.0.1497.6
Exchange 2010 SP3 RU30
14.3.452.0

Warto pamiętać, że aktualizacje obejmują tylko dwie ostatnie wersje CU, zarówno dla Exchange 2016 jak i 2019 (dla Exchange 2013 tylko ostatnią). Należy więc dobrze sprawdzić, jaką wersję poprawki powinniśmy pobrać.

01 marca 2020

Ułatwienia w migracji skrzynek - DCS

Każdy administrator Exchange, zarówno on-premises, jak i online, od czasu do czasu spotyka się z zadaniem migracyjnym - przeniesienie skrzynki do innej bazy czy też z lokalnego serwera do chmury jest stosunkowo prostym zadaniem, jednak żeby nie zakończyło się niepowodzeniem, należało w zadaniu migracyjnym ustawić wartość 'Bad Item Limit' na odpowiednio wysoką wartość (ja przeważnie używam 50). Działanie to miało umożliwić poprawne wykonanie migracji pomimo natrafienia na pewną ilość (nie większą niż wskazany limit) uszkodzonych elementów w skrzynce użytkownika. Po zakończeniu migracji mogliśmy zweryfikować log dla takiej skrzynki i sprawdzić, jakiego rodzaju elementy nie zostały zmigrowane. Jednak przy każdym zadaniu migracyjnym należało o tym pamiętać (pojawienie się nawet jednego elementu powodowało "wywalenie się" migracji), co bywało nieco uciążliwe, zwłaszcza dla osób z mniejszym doświadczeniem. Pod koniec zeszłego roku Microsoft wprowadził alternatywny mechanizm w Exchange Online o nazwie Data Consistency Score (DCS). Na podstawie znalezionych w trakcie migracji uszkodzonych elementów, raport pomigracyjny określa wynik migracji jako Perfect, Good, Investigate lub Poor. Migracja oznaczona jako Investigate wymaga dodatkowej akceptacji przez administratora (przez portal lub Powershell), oczywiście po weryfikacji, jakie problemy pojawiły się w trakcie. Migracja oznaczona jako Poor, nie może być zakończona bez eskalacji do supportu usługi. DCS zastępuje również użycie opcji -LargeItemLimit, co czasami bywa niezbędne przy użytkownikach z niestandardowymi wymaganiami.
Oczywiście, jeżeli użyjemy parametr -BadItemLimit definiując moverequest dla chmury, to nasz wybór będzie miał preferencję nad DCS, ale domyślny tryb migracyjny korzysta z nowego mechanizmu scoringu. Docelowo zarówno -BadItemLimit jak i -LargeItemLimit zostaną całkowicie zastąpione mechanizmem DCS. Więc informacji o Data Consistency Score można znaleźć w dokumentacji producenta.