"Enter"a basıp içeriğe geçin

G Suite Kullanıcı Grup Üyeliklerinin Export Edilip, Import Edilme İşlemleri

GAM Google GSuite API lerine erişerek gönüllülerin ve genellikle google çalışanları tarafından geliştirilen cmdlet serisidir.

Kurulumunu site içerisinde belirtilen yöntem ile yapılabilir.

Kurum içerisinde Google GSuite üzerinden Office 365 üzerine geçiş adımlarımız var. Bu esnada GSuite üzerinden kullanıcının geçişi O365 e tamamlandıktan sonra GSuite hesabının silinmesini sağlayacağım ancak genel geçişler tamamlandıktan sonra Office 365 üzerine mail gruplarını geçireceğim. Haliyle kullanıcı silindiğinde ilgili gruplara atılan mailleri almaya devam etmesi gerekmektedir. Office 365 kullanıcısı yine aynı mail adresi ile olacağı için export ettiğim listeyi yine aynı şekilde import etmem gerekecek.

https://github.com/jay0lee/GAM

Gam kurulu olan makinemiz üzerinde aşağıdaki yöntem ile users.txt içerisinde mail adresleri girilmiş olan kullanıcıların grup üyelikleri export işlemi yine belirtilen dizin içerisine gerçekleşecektir.

$user= Import-Csv C:\gam-scripts\Office365\ExportGroupAddMembership\Users\users.txt -Header mail


foreach ($usr in $user) {

    $dosya= "C:\gam-scripts\Office365\ExportGroupAddMembership\Groups\" + $usr.mail + ".txt"
    gam print groups member $usr.mail | out-file $dosya

}

Şimdi Export edilen dizin içerisinde her kullanıcının mailadresi.txt şeklinde çıktılar bulunmakta. Bu kullanıcıları toplu işlemlerde isimlerinin yer aldığı txt ler içerisinde eski üyelikleri bulunmakta. İlgili dizin içerisindeki txt leri array içerisine alacak olup sırasyıla tüm kullanıcıları ilgli txt içerisindeki mail gruplarına üye edeceğiz.

$kullaniciler= (Get-ChildItem C:\gam-scripts\Office365\ExportGroupAddMembership\Groups).Name
$file= 'C:\gam-scripts\Office365\ExportGroupAddMembership\Groups\'

foreach ( $kullanici in $kullaniciler) {
   $a = $file + $kullanici 
   $b = Import-Csv $a 

   foreach ($mailgrp in $b) {

      gam update group $mailgrp.Email add member $kullanici.TrimEnd('.txt')
     # write-host $kullanici.TrimEnd('.txt') $mailgrp.Email gruba üye edilmiştir
    }
 }

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir