Powershell 세기 상호 연결 Office365 네스트된 그룹 전송 권한 설정

10043 단어 powershell
 1 Start-Transcript ".\Set-GroupSendPermisionLog.txt" -Force

 2 

 3 function Get-DLMemberRecurse

 4 {

 5     $group=get-distributiongroupmember $args[0] -ResultSize unlimited

 6     foreach ($varTemp in $group)

 7     {

 8         $varTemp

 9         if ($varTemp.RecipientType -like "Mail*Group")

10         {

11             $members += $varTemp.Identity

12             Get-DLMemberRecurse $varTemp.Identity

13         }

14     }

15     return $members

16 }

17 

18 $CsvPath = ".\Set-GroupSendPermisionList.csv"

19 

20 $Users = import-csv $CsvPath

21 

22 foreach ($User in $Users) 

23 {

24     $groupname=$User.Group

25     $groupname

26 

27     if (!(get-distributiongroup $groupname))

28     {

29         echo "Group not found"

30     } else {

31         echo "Group found"

32         Get-DLMemberRecurse $groupname | where-Object {$_.RecipientType -like "Mail*Group"} | select name | export-csv -NoTypeInformation -Encoding utf8 -path .\Set-GroupSendPermision.csv

33         $content=Get-Content -Encoding utf8 -Path .\Set-GroupSendPermision.csv | Select -Skip 1

34         $content=$content.Replace("`"","")

35         #$content

36         $dup=($content | Measure-Object).count

37         $dup

38         echo -----------------------------------------------

39         $content=$content | sort | get-unique

40         #$content

41         $nodup=($content | Measure-Object).count

42         $nodup

43         echo ===============================================

44         for($i=1;$i -le $nodup;$i++)

45         {

46             $i

47             echo 1

48             if ($nodup -eq 1)

49             {

50             $Identity=$content

51             }

52             else

53             {

54             $Identity=$content[$i-1]

55             }

56             echo 2

57             $Identity

58             echo 3

59             (Get-DistributionGroup -identity $Identity).AcceptMessagesOnlyFromSendersOrMembers

60             echo 4

61             #Set-DistributionGroup -Identity $Identity -AcceptMessagesOnlyFromSendersOrMembers ((Get-DistributionGroup -identity $Identity).AcceptMessagesOnlyFromSendersOrMembers +"$Gmember") -BypassSecurityGroupManagerCheck

62             echo *******************************

63         }

64     }

65     echo ///////////////////////////////////////////////////////////////////////////////

66 }

67 

68 get-pssession | remove-pssession

69 Stop-Transcript

CSV 형식 User, Groupuser1, group1user1, group2user1, group3user2, group1user3, group3
http://www.smallrascal.cn/smallrascal/article.asp?id=2082

좋은 웹페이지 즐겨찾기