Powershell: لا يمكن الاتصال بـ Office 365 / Exchange Online باستخدام PowerShell

تم إنشاؤها على ٢٨ نوفمبر ٢٠١٧  ·  70تعليقات  ·  مصدر: PowerShell/PowerShell

لا يمكنني الاتصال بـ Office 365 / Exchange Online باستخدام PowerShell.
على ما يبدو ، يمكن للآخرين استخدام أحدث إصدار من Push ، لكنه لا يعمل بالنسبة لي على macOS 10.12 أو 10.13 مع pwsh 6.0.0-rc

لقد تلقيت خطأ في إنشاء New-PSSession. اعتمادًا على الصيغة الدقيقة للأمر الذي أستخدمه ، إما أنه يقول New-PSSession: تتطلب مجموعة المعلمات هذه WSMan ، ولم يتم العثور على مكتبة عميل WSMan دعم ، أو إنهاء PowerShell مع استثناء غير معالج وإحباط trap 6.

خطوات التكاثر

قم بتثبيت PowerShell 6.0.0-rc على نظام التشغيل macOS 10.12 أو 10.13.
استخدم Get-Credential للحصول على بيانات اعتماد مسؤول Office 365 ثم استخدم New-PSSession لإنشاء جلسة جديدة.

[kai<strong i="11">@blackmac</strong> ~]$ pwsh
PowerShell v6.0.0-rc
Copyright (c) Microsoft Corporation. All rights reserved.

https://aka.ms/pscore6-docs
Type 'help' to get help.

PS /Users/kai> $PSVersionTable                                        

Name                           Value                                           
----                           -----                                           
PSVersion                      6.0.0-rc                                        
PSEdition                      Core                                            
GitCommitId                    v6.0.0-rc                                       
OS                             Darwin 16.7.0 Darwin Kernel Version 16.7.0: T...
Platform                       Unix                                            
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0...}                         
PSRemotingProtocolVersion      2.3                                             
SerializationVersion           1.1.0.1                                         
WSManStackVersion              3.0                                             


PS /Users/kai> $UserCredential = Get-Credential                       

PowerShell credential request
Enter your credentials.
User: [email protected]
Password for user [email protected]: ***********

PS /usr/local/microsoft> $Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://outlook.office365.com/powershell-liveid/ -Credential $UserCredential -Authentication Basic -AllowRedirection                     
New-PSSession : This parameter set requires WSMan, and no supported WSMan client library was found. WSMan is either not installed or unavailable for this system.
At line:1 char:12
+ $Session = New-PSSession -ConfigurationName Microsoft.Exchange -Conne ...
+            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo          : ResourceUnavailable: (:) [New-PSSession], PSRemotingTransportException
+ FullyQualifiedErrorId : System.Management.Automation.Remoting.PSRemotingDataStructureException,Microsoft.PowerShell.Commands.NewPSSessionCommand

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

An error has occurred that was not properly handled. Additional information is shown below. The PowerShell process will exit.

Unhandled Exception: System.NullReferenceException: Object reference not set to an instance of an object.
   at System.Management.Automation.Remoting.PrioritySendDataCollection.Clear()
   at System.Management.Automation.Remoting.Client.BaseClientTransportManager.CloseAsync()
   at System.Management.Automation.Remoting.Client.WSManClientSessionTransportManager.CloseAsync()
   at System.Management.Automation.Remoting.Client.BaseClientTransportManager.Finalize()
Abort trap: 6
[kai<strong i="12">@blackmac</strong> ~]$ 

ستلاحظ من الموجه في السطر الأخير أعلاه أنه أسقطني مرة أخرى في غلاف bash.

سلوك متوقع

من المتوقع أن تعمل New-PSSession على نظام macOS

السلوك الفعلي

اعتمادًا على الصيغة الدقيقة للأمر ، تقوم New-PSSession إما بإرجاع رسالة خطأ:
New-PSSession: تتطلب مجموعة المعلمات هذه WSMan ، ولم يتم العثور على مكتبة عميل WSMan مدعومة
أو ، لدى New-PSSession استثناء غير معالج ويتم إنهاء PowerShell مع إحباط فخ 6.

الاختلافات في بناء الجملة مع ConnectionUri - سواء كان هناك شرطة مائلة على uri أم لا ، يبدو أنه يحدث الفرق. باستخدام الشرطة المائلة اللاحقة ، أحصل على الخطأ المتعلق بفقدان WSMan. بدون الشرطة المائلة اللاحقة ، يتم إحباط جلسة PowerShell.

بشرطة مائلة:

PS /Users/kai> $Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://outlook.office365.com/powershell-liveid/ -Credential $UserCredential -Authentication Basic -AllowRedirection                     
New-PSSession : This parameter set requires WSMan, and no supported WSMan client library was found. WSMan is either not installed or unavailable for this system.
At line:1 char:12
+ $Session = New-PSSession -ConfigurationName Microsoft.Exchange -Conne ...
+            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo          : ResourceUnavailable: (:) [New-PSSession], PSRemotingTransportException
+ FullyQualifiedErrorId : System.Management.Automation.Remoting.PSRemotingDataStructureException,Microsoft.PowerShell.Commands.NewPSSessionCommand

بدون خط مائل:

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

An error has occurred that was not properly handled. Additional information is shown below. The PowerShell process will exit.

Unhandled Exception: System.NullReferenceException: Object reference not set to an instance of an object.
   at System.Management.Automation.Remoting.PrioritySendDataCollection.Clear()
   at System.Management.Automation.Remoting.Client.BaseClientTransportManager.CloseAsync()
   at System.Management.Automation.Remoting.Client.WSManClientSessionTransportManager.CloseAsync()
   at System.Management.Automation.Remoting.Client.BaseClientTransportManager.Finalize()
Abort trap: 6

بيانات البيئة

PS /Users/kai> $PSVersionTable                                                                                                                                                                                Name                           Value                                                                   
----                           -----                                                                  
PSVersion                      6.0.0-rc                                                               
PSEdition                      Core                                                                   
GitCommitId                    v6.0.0-rc                                                              
OS                             Darwin 16.7.0 Darwin Kernel Version 16.7.0: Thu Jun 15 17:36:27 PDT ...
Platform                       Unix                                                                   
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0...}                                                
PSRemotingProtocolVersion      2.3                                                                    
SerializationVersion           1.1.0.1                                                                
WSManStackVersion              3.0                                                                    
Issue-Discussion OS-macOS Resolution-Fixed WG-Remoting

التعليق الأكثر فائدة

اهلا ياجماعة،

فيما يتعلق بإصدار opensl ، أجبرت الشراب على استخدام الإصدار 1.02 وهذا أصلح مشكلات pwsh O365. الأوامر التي قمت بتشغيلها هي ...

المشروب إلغاء التثبيت openssl ؛
المشروب إلغاء التثبيت openssl ؛ (للتأكد من عدم ترك أي شيء عالق)
قم بتثبيت الشراب https://github.com/tebelorg/Tump/releases/download/v1.0.0/openssl.rb

الائتمان: kensoh

شكر.

ال 70 كومينتر

هذا يعمل بالنسبة لي على 10.13.1. هل يمكنك تأكيد أنه في $ PSHome لديك libpsrpclient.dylib ؟

PowerShell v6.0.0-rc
Copyright (c) Microsoft Corporation. All rights reserved.

https://aka.ms/pscore6-docs
Type 'help' to get help.

PS /Users/kai> cd $PSHome                                                       
PS /usr/local/microsoft/powershell/6.0.0-rc> ls -al *.dylib                     
-rw-r--r--  1 root  wheel    70224 31 Oct 17:27 System.Globalization.Native.dylib
-rw-r--r--  1 root  wheel    13484 31 Oct 17:27 System.IO.Compression.Native.dylib
-rw-r--r--  1 root  wheel    61460 31 Oct 17:27 System.Native.dylib
-rw-r--r--  1 root  wheel    16932 31 Oct 17:27 System.Net.Http.Native.dylib
-rw-r--r--  1 root  wheel    15132 31 Oct 17:27 System.Net.Security.Native.dylib
-rw-r--r--  1 root  wheel    46016 31 Oct 17:27 System.Security.Cryptography.Native.Apple.dylib
-rw-r--r--  1 root  wheel    75708 31 Oct 17:27 System.Security.Cryptography.Native.OpenSsl.dylib
-rw-r--r--  1 root  wheel  2571480 31 Oct 17:27 libclrjit.dylib
-rw-r--r--  1 root  wheel  6894904 31 Oct 17:27 libcoreclr.dylib
-rw-r--r--  1 root  wheel   883740 31 Oct 17:27 libdbgshim.dylib
-rw-r--r--  1 root  wheel   869664 31 Oct 17:27 libhostfxr.dylib
-rw-r--r--  1 root  wheel  1006336 31 Oct 17:27 libhostpolicy.dylib
-rw-r--r--  1 root  wheel   843792 14 Nov 11:37 libmi.dylib
-rw-r--r--  1 root  wheel  3081760 31 Oct 17:27 libmscordaccore.dylib
-rw-r--r--  1 root  wheel  2021168 31 Oct 17:27 libmscordbi.dylib
-rw-r--r--  1 root  wheel    20568  4 Nov 09:08 libpsl-native.dylib
-rw-r--r--  1 root  wheel   224784 15 Nov 07:39 libpsrpclient.dylib
-rw-r--r--  1 root  wheel   553360 31 Oct 17:27 libsos.dylib
PS /usr/local/microsoft/powershell/6.0.0-rc> 

@ kai-h لديك المكتبة الصحيحة ذات الحجم والأذونات المناسبة للملف. هل DYLD_LIBRARY_PATH محدد؟ ما هو ناتج $env:DYLD_LIBRARY_PATH ؟

إنه غير محدد.
`` بوويرشيل
PowerShell v6.0.0-rc
حقوق النشر (c) Microsoft Corporation. كل الحقوق محفوظة.

https://aka.ms/pscore6-docs
اكتب "help" للحصول على المساعدة.

PS / Users / kai> $ env: DYLD_LIBRARY_PATH
PS / المستخدمون / كاي>
""

ماذا يعود [System.Environment]::Is64BitProcess ؟

PS /Users/kai> [System.Environment]::Is64BitProcess                             
True

@ kai-h try (في المحطة قبل بدء pwsh):

export DYLD_LIBRARY_PATH=/usr/local/microsoft/powershell/6.0.0-rc:${DYLD_LIBRARY_PATH}
pwsh
$Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://outlook.office365.com/powershell-liveid/ -Credential $UserCredential -Authentication Basic -AllowRedirection

شكرا لك على مثابرتك مع هذا. ما زلت أتلقى نفس الخطأ بالرغم من ذلك.

[kai<strong i="6">@hobbes</strong> ~]$ export DYLD_LIBRARY_PATH=/usr/local/microsoft/powershell/6.0.0-rc:${DYLD_LIBRARY_PATH}
[kai<strong i="7">@hobbes</strong> ~]$ pwsh
PowerShell v6.0.0-rc
Copyright (c) Microsoft Corporation. All rights reserved.

https://aka.ms/pscore6-docs
Type 'help' to get help.

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

PowerShell credential request
Enter your credentials.
User: [email protected]
Password for user [email protected]: ********


An error has occurred that was not properly handled. Additional information is shown below. The PowerShell process will exit.

Unhandled Exception: System.NullReferenceException: Object reference not set to an instance of an object.
   at System.Management.Automation.Remoting.PrioritySendDataCollection.Clear()
   at System.Management.Automation.Remoting.Client.BaseClientTransportManager.CloseAsync()
   at System.Management.Automation.Remoting.Client.WSManClientSessionTransportManager.CloseAsync()
   at System.Management.Automation.Remoting.Client.BaseClientTransportManager.Finalize()
Abort trap: 6
[kai<strong i="8">@hobbes</strong> ~]$ 

أود أن أؤكد أنه يمكنني الاتصال بنجاح بـ Office 365 من PowerShell المستضاف على جهاز ظاهري Azure Ubuntu ، باستخدام نفس التفاصيل التي أجربها على جهاز Mac.

PowerShell v6.0.0-rc
Copyright (c) Microsoft Corporation. All rights reserved.

https://aka.ms/pscore6-docs
Type 'help' to get help.

PS /home/kai>  $PSVersionTable                                                                                                                               

Name                           Value                                                                                                                        
----                           -----                                                                                                                        
PSVersion                      6.0.0-rc                                                                                                                     
PSEdition                      Core                                                                                                                         
GitCommitId                    v6.0.0-rc                                                                                                                    
OS                             Linux 4.4.0-22-generic #40-Ubuntu SMP Thu May 12 22:03:46 UTC 2016                                                           
Platform                       Unix                                                                                                                         
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0...}                                                                                                      
PSRemotingProtocolVersion      2.3                                                                                                                          
SerializationVersion           1.1.0.1                                                                                                                      
WSManStackVersion              3.0                                                                                                                          


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

PowerShell credential request
Enter your credentials.
User: [email protected]
Password for user [email protected]: ********

PS /home/kai> Import-PSSession $Session
(at this point PowerShell starts loading remote modules etc and preparing the session)

ما سأفعله لإزالة أي مشكلات محتملة معي بعد أن قمت بتعديل شيء ما على جهاز Mac الخاص بي يتعارض مع هذا هو إعداد تثبيت نظيف لنظام التشغيل macOS 10.12 ثم تثبيت جديد لـ PowerShell 6.0.0-rc واختباره إذا كان يعمل الليلة.

إنه مزدوج # 3606

المشكلة رقم 3606 هي نوع من المخادعة ، لكنهم رأوا أيضًا الخطأ الذي لم أره يحدث في الاختبار.

New-PSSession : Unable to load DLL 'libpsrpclient':...

لقد تمكنت من إعادة إنتاج هذا على تثبيت نظيف لنظام macOS 10.12.6 وتثبيت نظيف لبرنامج PowerShell 6.0.0-rc. كل شيء مع الإعدادات الافتراضية ، حساب مسؤول جديد تم إنشاؤه عند التمهيد الأول ولم يتم تغيير أي إعدادات لتطبيق Terminal.

Last login: Thu Nov 30 08:11:57 on ttys000
Administrators-Mac-mini:~ admin$ pwsh
PowerShell v6.0.0-rc
Copyright (c) Microsoft Corporation. All rights reserved.

https://aka.ms/pscore6-docs
Type 'help' to get help.

PS /Users/admin> $PSVersionTable                                                

Name                           Value                                           
----                           -----                                           
PSVersion                      6.0.0-rc                                        
PSEdition                      Core                                            
GitCommitId                    v6.0.0-rc                                       
OS                             Darwin 16.7.0 Darwin Kernel Version 16.7.0: T...
Platform                       Unix                                            
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0...}                         
PSRemotingProtocolVersion      2.3                                             
SerializationVersion           1.1.0.1                                         
WSManStackVersion              3.0                                             


PS /Users/admin> $env:DYLD_LIBRARY_PATH                                         
PS /Users/admin> [System.Environment]::Is64BitProcess                           
True
PS /Users/admin> $Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://outlook.office365.com/powershell-liveid/ -Credential $UserCredential -Authentication Basic -AllowRedirection                             

PowerShell credential request
Enter your credentials.
User: [email protected]
Password for user [email protected]: *********


An error has occurred that was not properly handled. Additional information is shown below. The PowerShell process will exit.

Unhandled Exception: System.NullReferenceException: Object reference not set to an instance of an object.
   at System.Management.Automation.Remoting.PrioritySendDataCollection.Clear()
   at System.Management.Automation.Remoting.Client.BaseClientTransportManager.CloseAsync()
   at System.Management.Automation.Remoting.Client.WSManClientSessionTransportManager.CloseAsync()
   at System.Management.Automation.Remoting.Client.BaseClientTransportManager.Finalize()
Abort trap: 6
Administrators-Mac-mini:~ admin$ 

فيما يلي نتائج تثبيت نظيف 10.12.6

Last login: Thu Nov 30 08:48:11 on ttys000
Administrators-Mac-mini:~ admin$ pwsh
PowerShell v6.0.0-rc
Copyright (c) Microsoft Corporation. All rights reserved.

https://aka.ms/pscore6-docs
Type 'help' to get help.

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

PowerShell credential request
Enter your credentials.
User: [email protected]
Password for user [email protected]: ********


An error has occurred that was not properly handled. Additional information is shown below. The PowerShell process will exit.

Unhandled Exception: System.NullReferenceException: Object reference not set to an instance of an object.
   at System.Management.Automation.Remoting.PrioritySendDataCollection.Clear() in /PowerShell/src/System.Management.Automation/engine/remoting/fanin/PriorityCollection.cs:line 158
   at System.Management.Automation.Remoting.Client.BaseClientTransportManager.CloseAsync() in /PowerShell/src/System.Management.Automation/engine/remoting/fanin/BaseTransportManager.cs:line 949
   at System.Management.Automation.Remoting.Client.WSManClientSessionTransportManager.CloseAsync() in /PowerShell/src/System.Management.Automation/engine/remoting/fanin/WSManTransportManager.cs:line 1219
   at System.Management.Automation.Remoting.Client.BaseClientTransportManager.Finalize() in /PowerShell/src/System.Management.Automation/engine/remoting/fanin/BaseTransportManager.cs:line 998
Abort trap: 6
Administrators-Mac-mini:~ admin$ 

قد يكون هذا متعلقًا بالمشكلات التي كنت أراها موثقة في # 4029
كما هو الحال ، يتطلب PowerShell 6.0.0-rc استخدام مكتبات OpenSSL المثبتة بواسطة Homebrew

للمساعدة.

واجهت نفس المشكلة في حاوية عامل إرساء دبيان 9. بعد قراءة التعليقات أعلاه ، رأيت أنه كان هناك بعض مكتبات الارتباطات المعطلة وكان ذلك لأن مكتبات النظام أحدث مما كان متوقعًا. بعد ذلك ، قمت بعمل بعض الروابط الرمزية وسار كل شيء على ما يرام.

root @ db70f6f67c51 : / usr / lib / x86_64-linux-gnu # ldd /opt/microsoft/powershell/6.0.1/libmi.so

    _linux-vdso.so.1 (0x00007ffd4b7fd000)
    libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f86cb670000)
    libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f86cb46c000)
    libpam.so.0 => /lib/x86_64-linux-gnu/libpam.so.0 (0x00007f86cb25e000)
    **libssl.so.1.0.0 =>  not found
    libcrypto.so.1.0.0 => not found**
    libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f86cac56000)
    /lib64/ld-linux-x86-64.so.2 (0x00007f86cb88d000)
    libaudit.so.1 => /lib/x86_64-linux-gnu/libaudit.so.1 (0x00007f86caa2e000)
    libcrypto.so.1.0.2 => /usr/lib/x86_64-linux-gnu/libcrypto.so.1.0.2 (0x00007f86ca5ca000)
    libcap-ng.so.0 => /lib/x86_64-linux-gnu/libcap-ng.so.0 (0x00007f86ca3c4000)_

root @ db70f6f67c51 : /opt/microsoft/powershell/6.0.1# cd / usr / lib / x86_64-linux-gnu /
الجذر @ db70f6f67c51 : / usr / lib / x86_64-linux-gnu # ln -s libssl.so.1.0.2 libssl.so.1.0.0
الجذر @ db70f6f67c51 : / usr / lib / x86_64-linux-gnu # ls -l libssl *

_-rw-r - r-- 1 جذر جذر 738444 نوفمبر 2 11:29 libssl.a
lrwxrwxrwx 1 root root 13 Nov 2 11:29 libssl.so -> libssl.so.1.1
lrwxrwxrwx 1 جذر جذر 15 فبراير 21 17:27 libssl.so.1.0.0 -> libssl.so.1.0.2
-rw-r - r-- 1 جذر جذر 431232 13 ديسمبر 22:09 libssl.so.1.0.2
-rw-r - r-- 1 جذر جذر 442920 نوفمبر 2 11:29 libssl.so.1.1_

root @ db70f6f67c51 : / usr / lib / x86_64-linux-gnu # ln -s libcrypto.so.1.0.2 libcrypto.so.1.0.0
root @ db70f6f67c51 : / usr / lib / x86_64-linux-gnu # ldd /opt/microsoft/powershell/6.0.1/libmi.so

    _linux-vdso.so.1 (0x00007ffdde3b4000)
    libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f4e51539000)
    libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f4e51335000)
    libpam.so.0 => /lib/x86_64-linux-gnu/libpam.so.0 (0x00007f4e51127000)
    libssl.so.1.0.0 => /usr/lib/x86_64-linux-gnu/libssl.so.1.0.0 (0x00007f4e50ebe000)
    libcrypto.so.1.0.0 => /usr/lib/x86_64-linux-gnu/libcrypto.so.1.0.0 (0x00007f4e50a5a000)
    libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f4e506bb000)
    /lib64/ld-linux-x86-64.so.2 (0x00007f4e51756000)
    libaudit.so.1 => /lib/x86_64-linux-gnu/libaudit.so.1 (0x00007f4e50493000)
    libcap-ng.so.0 => /lib/x86_64-linux-gnu/libcap-ng.so.0 (0x00007f4e5028d000)_

كنت أواجه مشكلة مماثلة ولكن بالنسبة لي كانت المشكلة مع -AllowRedirection Parameter.

إذا حاولت في لينكس.

$Session = $O365Session = New-PSSession –ConfigurationName Microsoft.Exchange -ConnectionUri https://ps.outlook.com/powershell -Credential $O365Cred -Authentication Basic -AllowRedirection

New-PSSession : [ps.outlook.com] Connecting to remote server ps.outlook.com failed with the following error message : Basic Authorization failed for user [email protected] For more information, see the about_Remote_Troubleshooting Help topic.
At line:1 char:12
+ $Session = New-PSSession -ConfigurationName Microsoft.Exchange -Conne ...
+            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo          : OpenError: (System.Manageme....RemoteRunspace:RemoteRunspace) [New-PSSession], PSRemotingTransportException
+ FullyQualifiedErrorId : 2,PSSessionOpenFailed

الإصدار الخاص بي من Powershell

PS /> $PSVersionTable                                                                                                                                               

Name                           Value                                                                                                                               
----                           -----                                                                                                                               
PSVersion                      6.0.2                                                                                                                               
PSEdition                      Core                                                                                                                                
GitCommitId                    v6.0.2                                                                                                                              
OS                             Linux 4.13.0-37-generic #42-Ubuntu SMP Wed Mar 7 14:13:23 UTC 2018                                                                  
Platform                       Unix                                                                                                                                
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0...}                                                                                                             
PSRemotingProtocolVersion      2.3                                                                                                                                 
SerializationVersion           1.1.0.1                                                                                                                             
WSManStackVersion              3.0       

نفس الشيء في Powershell في Windows 10

PS C:\Users\user> $O365Session = New-PSSession –ConfigurationName Microsoft.Exchange -ConnectionUri https://ps.outlook.com/powershell -Credential $O365Cred -Authentication Basic -AllowRedirection

WARNING: Your connection has been redirected to the following URI: "https://ps.outlook.com/PowerShell-LiveID?PSVersion=5.1.16299.251 "

تلقيت تحذيرًا من إعادة التوجيه ولكني نجحت في الحصول على الاتصال.

الإصدار الخاص بي على نظام التشغيل Windows 10

PS C:\Users\user> $PSVersionTable

Name                           Value
----                           -----
PSVersion                      5.1.16299.251
PSEdition                      Desktop
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0...}
BuildVersion                   10.0.16299.251
CLRVersion                     4.0.30319.42000
WSManStackVersion              3.0
PSRemotingProtocolVersion      2.3
SerializationVersion           1.1.0.1

الآن نقوم بتشغيل نفس الأمر في لينكس ولكن باستخدام URI المعاد توجيهه لدينا في windows.

PS /> $O365Session = New-PSSession –ConfigurationName Microsoft.Exchange -ConnectionUri "https://ps.outlook.com/PowerShell-LiveID?PSVersion=5.1.16299.251" -Credential $O365Cred -Authentication Basic -AllowRedirection                                                                                                                
PS /> $O365Session                                                                                                                                                  

 Id Name            ComputerName    ComputerType    State         ConfigurationName     Availability
 -- ----            ------------    ------------    -----         -----------------     ------------
  6 WinRM6          ps.outlook.com  RemoteMachine   Opened        Microsoft.Exchange       Available

هذا يبدو لي أن المشكلة تكمن في أن أداة إعادة التوجيه allowredirection لا تعمل بشكل صحيح.

بعد تثبيت أحدث إصدار من PowerShell (v6.0.2) ، لم يعد هذا يعمل بالنسبة لي:

[kai<strong i="6">@blackmac</strong> ~]$ pwsh
PowerShell v6.0.2
Copyright (c) Microsoft Corporation. All rights reserved.

https://aka.ms/pscore6-docs
Type 'help' to get help.

PS /Users/kai> $PSVersionTable                                                                                                             

Name                           Value                                                                                                      
----                           -----                                                                                                      
PSVersion                      6.0.2                                                                                                      
PSEdition                      Core                                                                                                       
GitCommitId                    v6.0.2                                                                                                     
OS                             Darwin 17.5.0 Darwin Kernel Version 17.5.0: Mon Mar  5 22:24:32 PST 2018; root:xnu-4570.51.1~1/RELEASE_X...
Platform                       Unix                                                                                                       
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0...}                                                                                    
PSRemotingProtocolVersion      2.3                                                                                                        
SerializationVersion           1.1.0.1                                                                                                    
WSManStackVersion              3.0                                                                                                        


PS /Users/kai> $UserCredential = Get-Credential                                                                                            

PowerShell credential request
Enter your credentials.
User: [email protected]
Password for user [email protected]: ***********

PS /Users/kai> $Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://outlook.office365.com/powershell-liveid/ -Credential $UserCredential -Authentication Basic -AllowRedirection                                                                     
New-PSSession : [outlook.office365.com] Connecting to remote server outlook.office365.com failed with the following error message : Client did not get proper response from server. For more information, see the about_Remote_Troubleshooting Help topic.
At line:1 char:12
+ $Session = New-PSSession -ConfigurationName Microsoft.Exchange -Conne ...
+            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo          : OpenError: (System.Manageme....RemoteRunspace:RemoteRunspace) [New-PSSession], PSRemotingTransportException
+ FullyQualifiedErrorId : 1,PSSessionOpenFailed
PS /Users/kai> 

@ SteveL-MSFT هل يجب أن نعتبر هذا غير مستقر ، أو تجربة مستخدم سيئة أو سيئة موثقة؟

هل هذا شيء تم تغييره في أحدث الإصدارات بحيث لا تعمل المصادقة الأساسية ، أم أنها أكثر من ذلك؟ يسعدني إجراء المزيد من الاختبارات إذا لزم الأمر.

لم يتم إجراء أية تغييرات على تحديثات الخدمة للإصدار 6.0.0 من شأنها التأثير على ذلك. لست متأكدًا مما إذا كانت هناك أية تغييرات على جانب الخادم. cc dantraMSFT

في نظام التشغيل MacOS ، أرى تراجعًا في 6.0.1 مع وجود خطأ ERROR_WSMAN_INVALID_SELECTORS ثابت. لا أرى أية مشكلات في الإصدار 6.0.0 و 6.0.2 ولم يتغير libpsrpclient عبر هذه الإصدارات. لم تتم ترقية الماكينة إلى High Sierra حتى الآن ، لذا قد يساهم ذلك.

كان الاختبار على جهاز Mac تمت ترقيته مؤخرًا من macOS 10.12 Sierra إلى 10.13 High Sierra. لقد قمت أيضًا بترقية PowerShell من أي إصدار كان لدي سابقًا (من المحتمل أن يكون 6.0.0 أو 6.0.1) إلى أحدث إصدار 6.0.2. لقد قمت أيضًا بتحديث تثبيت MacPorts الخاص بي إلى أحدث إصدار وقمت بتحديث جميع المنافذ الخاصة بي. لدي ارتباط رمزي لـ PowerShell من حيث تتوقع العثور على مكتبات OpenSSL كما تم تثبيتها بواسطة Homebrew إلى حيث تم تثبيتها بواسطة MacPorts وكان هذا كله يعمل قبل الترقيات للاتصال بـ Office 365

لدي بوويرشيل 6.0.2 مثبتة. لقد قمت بتثبيت MacPorts وأنشأت OpenSSL pkg وقمت بتثبيته. عندما أحاول إنشاء $ Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionURI https://outlook.office365.com/powershell-liveid/ -Credential $ O365Cred -Authenticatin Basic -Allowredirection ، وأحصل على نفس الخطأ الجديد -PSSession: تتطلب مجموعة المعلمات هذه WSMan ، ولم يتم العثور على مكتبة عميل WSMan مدعومة.
$ Psversiontable

قيمة الاسم
---- -----
الإصدار 6.0.2 من PSV
PSEdition الأساسية
GitCommitId v6.0.2
OS Darwin 17.5.0 إصدار Darwin Kernel 17.5.0: الجمعة 13 أبريل 19:32:32 PDT 2018 ؛ الجذر: x ...
منصة يونكس
PSComp CompatibleVersions {1.0، 2.0، 3.0، 4.0 ...}
PSRemotingProtocolVersion 2.3.1
الإصدار 1.1.0.1
الإصدار 3.0 من WSManStack

ماذا علي أن أفعل لإصلاح مشكلة WSMan؟

أنا جديد على O365 و PS على Mac. أواجه نفس رسالة الخطأ هنا. أقدر أي مساعدة يمكنني الحصول عليها.

قيمة الاسم
---- -----
الإصدار 6.0.2 من PSV
PSEdition الأساسية
GitCommitId v6.0.2
OS Darwin 17.6.0 إصدار Darwin Kernel 17.6.0: الثلاثاء 8 مايو 15:22:16 PDT 2018 ؛ الجذر: xnu-4570.61.1 ~ ...
منصة يونكس
PSComp CompatibleVersions {1.0، 2.0، 3.0، 4.0 ...}
PSRemotingProtocolVersion 2.3.1
الإصدار 1.1.0.1
الإصدار 3.0 من WSManStack

PS / Users / AdityaBhasin> $ Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://ps.protection.outlook.com/powershell-liveid/ -Credential $ UserCredential -Authentication Basic -AllowRedirection
New-PSSession: تتطلب مجموعة المعلمات هذه WSMan ، ولم يتم العثور على مكتبة عميل WSMan مدعومة. WSMan إما أنه غير مثبت أو غير متوفر لهذا النظام.
في السطر: 1 حرف: 12

  • $ Session = New-PSSession -ConfigurationName Microsoft.Exchange -Conne ...
  • ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~
  • CategoryInfo: ResourceUnavailable: (:) [New-PSSession] ، PSRemotingTransportException
  • FullyQualifiedErrorId: System.Management.Automation.Remoting.PSRemotingDataStructureException ، Microsoft.PowerShell.Commands.NewPSSessionCommand

PS / المستخدمون / AdityaBhasin>

إصدار النظام: macOS 10.13.5 (17F77)

هل قمت بتثبيت OpenSSL مع Homebrew؟ أو ، إذا كنت تستخدم MacPorts (الذي أوصي به) ، فهل قمت بربط دليل مكتبة OpenSSL بالمكان الذي يعتقد PowerShell أنه يجب أن يكون؟

sudo ln -s /opt/local/lib /usr/local/opt/openssl/lib

نجاح باهر! شكرًا جزيلاً لك @ kai-h لقد تقدمت لتشغيل الأمر لتحديث SSL المفتوح مع Homebrew ويبدو الآن أنه يعمل معي. سوف أقوم بالتحديث هنا إذا واجهت أي تحد جديد. شكرا لك مرة أخرى!

أدى تثبيت PowerShell v6.0.4 على OSX 10.13.3 إلى إصلاح المشكلة بالنسبة لي.

رابط التثبيت:
https://github.com/PowerShell/PowerShell/releases/download/v6.0.4/powershell-6.0.4-osx.10.12-x64.pkg

@ كاي ح هل يمكن أن تؤكد؟

إعادة فتح هذه المشكلة: ينتج عن الإصدار 6.1.0 على Mojave نفس المشكلة عند محاولة الاتصال بـ Office 365.

هذا أيضًا توبيخ لي مع Mojave

يعمل هذا بالنسبة لي مع 6.0.4 على Mojave مع تثبيت مكتبات OpenSSL عبر MacPorts ، وليس Homebrew.

"" بوويرشيل
[ kai @ blackmac ~] $ pwsh
PowerShell v6.0.4
حقوق النشر (c) Microsoft Corporation. كل الحقوق محفوظة.

https://aka.ms/pscore6-docs
اكتب "help" للحصول على المساعدة.

PS / Users / kai> $ PSVersionTable

قيمة الاسم
---- -----
الإصدار 6.0.4 من PSV
PSEdition الأساسية
GitCommitId v6.0.4
OS Darwin 18.0.0 إصدار Darwin Kernel 18.0.0: الأربعاء 22 أغسطس 20:13:40 PDT 2018 ؛ الجذر: xnu-4903.201.2 ~ 1 / RELEASE_X86_64
منصة يونكس
PSComp CompatibleVersions {1.0، 2.0، 3.0، 4.0 ...}
PSRemotingProtocolVersion 2.3.1
الإصدار 1.1.0.1
الإصدار 3.0 من WSManStack

PS / Users / kai> office365.ps1

طلب بيانات اعتماد PowerShell
أدخل بيانات الاعتماد الخاصة بك.
المستخدم: [email protected]
كلمة المرور للمستخدم [email protected] : * *

تحذير: تتضمن أسماء بعض الأوامر التي تم استيرادها من الوحدة النمطية "tmp_nlc54neg.nu0" أفعالاً غير معتمدة قد تجعلها أقل قابلية للاكتشاف. للعثور على الأوامر مع الأفعال غير المعتمدة ، قم بتشغيل الأمر Import-Module مرة أخرى باستخدام معلمة Verbose. للحصول على قائمة الأفعال المعتمدة ، اكتب Get-Verb. اسم الإصدار ModuleType ExportedCommands ---------- ------- ---------------- Script 1.0 tmp_nlc54neg.nu0 {Add-AvailabilityAddressSpace ، Add-DistributionGroupMember ، Add-MailboxFolderPermission ، Add-MailboxLocation ...}

PS / المستخدمون / كاي>
""

يعمل هذا أيضًا بالنسبة لي عندما قمت بالترقية إلى 6.1.0 على Mojave.
للتكرار ، أنا أستخدم مكتبات OpenSSH من MacPorts وقمت بربطها بالموقع الذي يتوقع PowerShell رؤيتها.
sudo ln -s /opt/local/lib /usr/local/opt/openssl/lib
ثم ، عندما أركض pwsh
"" بوويرشيل
[ kai @ blackmac ~] $ pwsh
بوويرشيل 6.1.0
حقوق النشر (c) Microsoft Corporation. كل الحقوق محفوظة.

https://aka.ms/pscore6-docs
اكتب "help" للحصول على المساعدة.

PS / Users / kai> $ PSVersionTable

قيمة الاسم
---- -----
إصدار PSVersion 6.1.0
PSEdition الأساسية
GitCommitId 6.1.0
OS Darwin 18.0.0 إصدار Darwin Kernel 18.0.0: الأربعاء 22 أغسطس 20:13:40 PDT 2018 ؛ الجذر: xnu-4903.201.2 ~ 1 / RELEASE_X86_64
منصة يونكس
PSComp CompatibleVersions {1.0، 2.0، 3.0، 4.0 ...}
PSRemotingProtocolVersion 2.3.1
الإصدار 1.1.0.1
الإصدار 3.0 من WSManStack

PS / Users / kai> office365.ps1

طلب بيانات اعتماد PowerShell
أدخل بيانات الاعتماد الخاصة بك.
المستخدم: [email protected]
كلمة المرور للمستخدم [email protected] : * *

تحذير: تتضمن أسماء بعض الأوامر المستوردة من الوحدة النمطية "tmp_kllnlbam.5cg" أفعالًا غير معتمدة قد تجعلها أقل قابلية للاكتشاف. للعثور على الأوامر مع الأفعال غير المعتمدة ، قم بتشغيل الأمر Import-Module مرة أخرى باستخدام معلمة Verbose. للحصول على قائمة الأفعال المعتمدة ، اكتب Get-Verb. ModuleType اسم الإصدار ExportedCommands ---------- ------- ---------------- Script 1.0 tmp_kllnlbam.5cg {Add-AvailabilityAddressSpace ، Add-DistributionGroupMember ، Add-MailboxFolderPermission ، إضافة -...

PS / المستخدمون / كاي>

""

استخدام إصدار MacPorts من OpenSSL يعمل معي.

أنا أعيد إنتاج هذا على Mojave باستخدام Macports OpenSSL:
نظام التشغيل Mac OS Mojave 10.14.5
Powershell 6.2.3

يتم تثبيت أدوات xcode. لقد قمت بتثبيت بوويرشيل مع البيرة.

Name                           Value
----                           -----
PSVersion                      6.2.3
PSEdition                      Core
GitCommitId                    6.2.3
OS                             Darwin 18.6.0 Darwin Kernel Version 18.6.0: Thu…
Platform                       Unix
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0…}
PSRemotingProtocolVersion      2.3
SerializationVersion           1.1.0.1
WSManStackVersion              3.0

لقد قمت بتثبيت opensl باستخدام إرشادات MS doc عبر MacPorts:

ws2784:~ travis.brackett$ port installed
The following ports are currently installed:
  openssl @1.1.1d_0 (active)
  zlib @1.2.11_0 (active)

لقد أنشأت الارتباط الرمزي:

sudo mkdir -p /usr/local/opt/openssl
sudo ln -s /opt/local/lib /usr/local/opt/openssl/lib

wsnnnn:~ travbrack$ ls -lha /usr/local/opt/openssl/lib/
total 14496
drwxr-xr-x  16 root  wheel   512B Nov 22 14:39 .
drwxr-xr-x  11 root  wheel   352B Nov 22 13:58 ..
-rw-r--r--   1 root  wheel     0B Oct 20 13:21 .turd_MacPorts
drwxr-xr-x   4 root  admin   128B Nov 22 14:39 engines-1.1
lrwxr-xr-x   1 root  wheel    14B Nov 22 14:28 lib -> /opt/local/lib
-rwxr-xr-x   1 root  admin   2.1M Sep 15 05:22 libcrypto.1.1.dylib
-rw-r--r--   1 root  admin   3.7M Sep 15 05:22 libcrypto.a
lrwxr-xr-x   1 root  admin    19B Sep 15 05:22 libcrypto.dylib -> libcrypto.1.1.dylib
-rwxr-xr-x   1 root  admin   479K Sep 15 05:22 libssl.1.1.dylib
-rw-r--r--   1 root  admin   704K Sep 15 05:22 libssl.a
lrwxr-xr-x   1 root  admin    16B Sep 15 05:22 libssl.dylib -> libssl.1.1.dylib
-rwxr-xr-x   1 root  admin    79K Oct  1  2018 libz.1.2.11.dylib
lrwxr-xr-x   1 root  admin    17B Oct  1  2018 libz.1.dylib -> libz.1.2.11.dylib
-rw-r--r--   1 root  admin    95K Oct  1  2018 libz.a
lrwxr-xr-x   1 root  admin    17B Oct  1  2018 libz.dylib -> libz.1.2.11.dylib
drwxr-xr-x   6 root  admin   192B Nov 22 14:39 pkgconfig
wsnnnn:~ travbrack$ ls -lha /usr/local/opt/openssl/lib
lrwxr-xr-x  1 root  admin    14B Nov 22 14:02 /usr/local/opt/openssl/lib -> /opt/local/lib

أعدت تشغيل الجهاز الطرفي ، وحاولت الدخول إلى الجلسة:

""
PS / Users / travbrack> أدخل اسم حساب pssession
enter-pssession: تتطلب مجموعة المعلمات هذه WSMan ، ولم يتم العثور على مكتبة عميل WSMan مدعومة. WSMan إما أنه غير مثبت أو غير متوفر لهذا النظام.
في السطر: 1 حرف: 1

  • أدخل اسم حساب pssession
  • ~ ~ ~ ~ ~ ~~~
  • CategoryInfo: InvalidArgument: (اسم الكمبيوتر: سلسلة) [Enter-PSSession] ، PSRemotingTransportException
  • FullyQualifiedErrorId: CreateRemoteRunspaceFailed
    ""

فإن أي مساعدة موضع تقدير كبير

تعليق من # 10600

واجهت نفس المشكلة ، وتمكنت من حلها عن طريق ربط إصدار opensl أقدم من الشراب باستخدام مفتاح brew switch openssl 1.0.2s

بالنسبة لي ، كان التبديل إلى openssl 1.0.2r يعمل أيضًا. لقد قمت بتثبيت برنامج openssl 1.1 من خلال الشراب بشكل افتراضي لكنهم لم يعملوا

اهلا ياجماعة،

فيما يتعلق بإصدار opensl ، أجبرت الشراب على استخدام الإصدار 1.02 وهذا أصلح مشكلات pwsh O365. الأوامر التي قمت بتشغيلها هي ...

المشروب إلغاء التثبيت openssl ؛
المشروب إلغاء التثبيت openssl ؛ (للتأكد من عدم ترك أي شيء عالق)
قم بتثبيت الشراب https://github.com/tebelorg/Tump/releases/download/v1.0.0/openssl.rb

الائتمان: kensoh

شكر.

leeharrison التي عملت معي في تشغيل mojave مع pwsh 6.0.4. لقد جربت جميع الاقتراحات السابقة ولم يعمل أي شيء آخر معي.

شكرًا leeharrison ، لقد واجهت أيضًا هذه المشكلة في High Sierra مع pwsh 6.0.4 وقد تم إصلاح اقتراحك بالنسبة لي أيضًا.

هل يمكننا التأكد من أن PowerShell على macOS لا يعتمد بشدة على إصدار أقدم وغير آمن من مكتبات OpenSSL؟ ومن الممارسات السيئة أيضًا أن تطلب صراحةً أن يتم تثبيت المكتبة بواسطة Homebrew بمسار مشفر.

اهلا ياجماعة،

فيما يتعلق بإصدار opensl ، أجبرت الشراب على استخدام الإصدار 1.02 وهذا أصلح مشكلات pwsh O365. الأوامر التي قمت بتشغيلها هي ...

المشروب إلغاء التثبيت openssl ؛
المشروب إلغاء التثبيت openssl ؛ (للتأكد من عدم ترك أي شيء عالق)
قم بتثبيت الشراب https://github.com/tebelorg/Tump/releases/download/v1.0.0/openssl.rb

الائتمان: kensoh

شكر.

هذا بالتأكيد يعمل بشكل جيد! شكرا لك.

اهلا ياجماعة،

فيما يتعلق بإصدار opensl ، أجبرت الشراب على استخدام الإصدار 1.02 وهذا أصلح مشكلات pwsh O365. الأوامر التي قمت بتشغيلها هي ...

المشروب إلغاء التثبيت openssl ؛
المشروب إلغاء التثبيت openssl ؛ (للتأكد من عدم ترك أي شيء عالق)
قم بتثبيت الشراب https://github.com/tebelorg/Tump/releases/download/v1.0.0/openssl.rb

الائتمان: kensoh

شكر.

هذا يعمل مع كاتالينا 10.15.4

اهلا ياجماعة،
فيما يتعلق بإصدار opensl ، أجبرت الشراب على استخدام الإصدار 1.02 وهذا أصلح مشكلات pwsh O365. الأوامر التي قمت بتشغيلها هي ...
المشروب إلغاء التثبيت openssl ؛
المشروب إلغاء التثبيت openssl ؛ (للتأكد من عدم ترك أي شيء عالق)
قم بتثبيت الشراب https://github.com/tebelorg/Tump/releases/download/v1.0.0/openssl.rb
الائتمان: kensoh
شكر.

هذا يعمل مع كاتالينا 10.15.4

كيف يمكنك جعل هذا يعمل دون كسر أدوات الشراب الأخرى المثبتة ؟؟
يبدو أنه لا يمكنني الحصول على أي منهما أو عندما جربته.
إما التراجع عن إصدار openssl ، يعمل pwsh ولكن iperf3 فواصل على سبيل المثال.

قيمة الاسم
---- -----
الإصدار 7.0.1 من PSV
PSEdition الأساسية
GitCommitId 7.0.1
OS Darwin 19.4.0 إصدار Darwin Kernel 19.4.0: الأربعاء 4 مارس 22:28:40 PST 2020 ؛ الجذر: xnu-6153.101.6 ~ 15 / RELEASE_X8 ...
منصة يونكس
PSComp CompatibleVersions {1.0، 2.0، 3.0، 4.0…}
PSRemotingProtocolVersion 2.3.1
الإصدار 1.1.0.1
الإصدار 3.0 من WSManStack

هل يمكنني من فضلك أن أذكر أن الرجوع إلى إصدار أقدم ، مهمل وبالتالي غير آمن من OpenSSL ليس حلاً حقيقيًا.

حصلت Apple بالفعل على كومة من الإصدارات المختلفة من مكتبات OpenSSL المثبتة على نظام macOS.

لماذا يحتوي PowerShell على macOS على مسارات مشفرة للمكتبات ، بدلاً من البحث في مسار مكتبة النظام.

في المجلد / usr / lib ، لدينا ستة إصدارات مختلفة موجودة هناك بانتظار استخدامها.
/usr/lib/libssl.0.9.8.dylib
/usr/lib/libssl.dylib
/usr/lib/libssl.35.dylib
/usr/lib/libssl.0.9.7.dylib
/usr/lib/libssl.43.dylib
/usr/lib/libssl.46.dylib
/usr/lib/libssl.44.dylib

هل يمكنني من فضلك أن أذكر أن الرجوع إلى إصدار أقدم ، مهمل وبالتالي غير آمن من OpenSSL ليس حلاً حقيقيًا.

حصلت Apple بالفعل على كومة من الإصدارات المختلفة من مكتبات OpenSSL المثبتة على نظام macOS.

لماذا يحتوي PowerShell على macOS على مسارات مشفرة للمكتبات ، بدلاً من البحث في مسار مكتبة النظام.

في المجلد / usr / lib ، لدينا ستة إصدارات مختلفة موجودة هناك بانتظار استخدامها.
/usr/lib/libssl.0.9.8.dylib
/usr/lib/libssl.dylib
/usr/lib/libssl.35.dylib
/usr/lib/libssl.0.9.7.dylib
/usr/lib/libssl.43.dylib
/usr/lib/libssl.46.dylib
/usr/lib/libssl.44.dylib

أتمنى أن تفهم أن تلك الإصدارات أقدم من OpenSSL. الإصدار الجديد هو v1.1.0 الذي تم إصداره في 25 أغسطس 2016 - تم إصدار الإصدار 0.9.8 في 5 يوليو 2005. انتهى بي الأمر بالتبديل إلى Linux على أي حال لأنني لا أستطيع التعامل مع تطبيق OpenSSH على العديد من خوادم Windows وصيانتها ، ولكن لا يزال يتطلع إلى كيفية دعم برنامج kerberos لـ PSCore في الإصدارات المستقبلية وما إذا كان هناك أي اهتمام به على نظام macOS.

mikeyjoel الرجاء إنشاء مشكلة جديدة ووصف سيناريوهات العمل عن بُعد التي تريد العمل بها.

mikeyjoel الرجاء إنشاء مشكلة جديدة ووصف سيناريوهات العمل عن بُعد التي تريد العمل بها.

لا داعي لإنشاء عدد جديد لأن المشكلة قد تم إنشاؤها بالفعل: # 3708

ستحتاج إلى الحزم التالية على RHEL / Centos أو Debian / Ubuntu Distribution:
محطة عمل krb5
krb5-devel
gssntlmssp (يتطلب تثبيت epel-release مسبقًا)
بوويرشيل

والتي تتوفر افتراضيًا لكل توزيعة Linux. أنا أتحدث عن هذا لأنه من الشائع جدًا أنك لن تقوم فقط بإدارة Office365 ولكن أيضًا خوادم Windows في بيئتك.

هل يمكنني من فضلك أن أذكر أن الرجوع إلى إصدار أقدم ، مهمل وبالتالي غير آمن من OpenSSL ليس حلاً حقيقيًا.
حصلت Apple بالفعل على كومة من الإصدارات المختلفة من مكتبات OpenSSL المثبتة على نظام macOS.
لماذا يحتوي PowerShell على macOS على مسارات مشفرة للمكتبات ، بدلاً من البحث في مسار مكتبة النظام.
في المجلد / usr / lib ، لدينا ستة إصدارات مختلفة موجودة هناك بانتظار استخدامها.
/usr/lib/libssl.0.9.8.dylib
/usr/lib/libssl.dylib
/usr/lib/libssl.35.dylib
/usr/lib/libssl.0.9.7.dylib
/usr/lib/libssl.43.dylib
/usr/lib/libssl.46.dylib
/usr/lib/libssl.44.dylib

أتمنى أن تفهم أن تلك الإصدارات أقدم من OpenSSL. الإصدار الجديد هو v1.1.0 الذي تم إصداره في 25 أغسطس 2016 - تم إصدار الإصدار 0.9.8 في 5 يوليو 2005. انتهى بي الأمر بالتبديل إلى Linux على أي حال لأنني لا أستطيع التعامل مع تطبيق OpenSSH على العديد من خوادم Windows وصيانتها ، ولكن لا يزال يتطلع إلى كيفية دعم برنامج kerberos لـ PSCore في الإصدارات المستقبلية وما إذا كان هناك أي اهتمام به على نظام macOS.

إنني أدرك جيدًا أن هذه مكتبات OpenSSL أقدم - ولكن نظرًا لأن pwsh لا يعمل حاليًا إلا مع المكتبات القديمة ، فهي مثبتة بالفعل على macOS.

لذا لست متأكدًا من مكان مشاركة هذا ، لكنني كنت ألعب مؤخرًا مع OMI لمحاولة تشغيله ضد إصدار أحدث من OpenSSL (1.1.0) بالإضافة إلى مصادقة Kerberos (وآمل أن يكون NTLM أيضًا) على ماك. هناك عدد قليل من الأخطاء التي قمت بإصلاحها في بنية محلية ولكن من الممكن بالتأكيد تشغيلها وأنا أخطط لإنشاء منشور / دليل مدونة لمساعدة الأشخاص على فعل الشيء نفسه للحصول على PSRemoting من خلال WinRM على غيرهم من Windows المضيفين.

كنت أتساءل عن مدى اهتمام فريق PowerShell بمحاولة دمج هذه التغييرات في بناء OMI المُجمع الذي قاموا بتضمينه في إصدارهم. إنني أخطط لمحاولة دمجهم في OMI repo ولكني لست متفائلًا بأنهم سينجحون بالفعل. يجب أن يسمح إصلاح OpenSSL لهم أيضًا بإسقاط متطلبات OpenSSL 1.0.0 التي قاموا بتوثيقها في خطوات التثبيت الخاصة بهم كما يبدو أن عناصر عميل PSRP فقط هي التي تتطلب تلك المكتبات.

يبدو أن هذا هو أطول سلسلة رسائل يمكنني العثور عليها حول هذه المشكلة ، لذلك اعتقدت أنه من الأفضل النشر هنا. يسعدنا إنشاء مشكلة جديدة لتجميع المشكلات المختلفة والحلول / الإصلاحات التي وجدتها حتى نتمكن من توثيقها بشكل صحيح للآخرين الذين يرغبون في تجربتها.

اهلا ياجماعة،

فيما يتعلق بإصدار opensl ، أجبرت الشراب على استخدام الإصدار 1.02 وهذا أصلح مشكلات pwsh O365. الأوامر التي قمت بتشغيلها هي ...

المشروب إلغاء التثبيت openssl ؛
المشروب إلغاء التثبيت openssl ؛ (للتأكد من عدم ترك أي شيء عالق)
قم بتثبيت الشراب https://github.com/tebelorg/Tump/releases/download/v1.0.0/openssl.rb

الائتمان: kensoh

شكر.

العثور على حل بديل سهل ومؤقت. شكرًا لـ kensoh و leeharrison لتوجيهي إلى الاتجاه الصحيح:

1.) تحقق مما إذا كان الإصدار القديم غير مثبت بالفعل
ls -al /usr/local/Cellar/openssl*

2.) تثبيت الإصدار القديم (1.0.2t الآن)
brew install https://github.com/tebelorg/Tump/releases/download/v1.0.0/openssl.rb

3.) قم بالتبديل إلى الإصدار القديم
brew switch openssl 1.0.2t

4.) هل خدع Powershell

5.) ارجع إلى إصدار OpenSSL الجديد (1.1.1g في حالتي ، تحقق من الخطوة 1. للعثور على الإصدار ومجلد Cellar)
brew switch [email protected] 1.1.1g

استمتع 😉

لماذا تم إغلاق هذا ، لا يزال يمثل مشكلة. كنت أحاول تنفيذ: Enter-AzWebAppContainerPSSession ولكن حصلت على خطأ WSMan ويبدو أن هذه مشكلة في PowerShell على Mac تتطلب OpenSSL 1.0.0 بينما لدي 1.1.1g مثبتًا.

تحديث - يبدو أنه تم إهمال WSMan وأنت تتركه وراءك ، ولكن للأسف لا يوجد جدول زمني متاح:
https://github.com/PowerShell/PowerShell/issues/10600#issuecomment -610565488

لذا لست متأكدًا من مكان مشاركة هذا ، لكنني كنت ألعب مؤخرًا مع OMI لمحاولة تشغيله ضد إصدار أحدث من OpenSSL (1.1.0) بالإضافة إلى مصادقة Kerberos (وآمل أن يكون NTLM أيضًا) على ماك. هناك عدد قليل من الأخطاء التي قمت بإصلاحها في بنية محلية ولكن من الممكن بالتأكيد تشغيلها وأنا أخطط لإنشاء منشور / دليل مدونة لمساعدة الأشخاص على فعل الشيء نفسه للحصول على PSRemoting من خلال WinRM على غيرهم من Windows المضيفين.

كنت أتساءل عن مدى اهتمام فريق PowerShell بمحاولة دمج هذه التغييرات في بناء OMI المُجمع الذي قاموا بتضمينه في إصدارهم. إنني أخطط لمحاولة دمجهم في OMI repo ولكني لست متفائلًا بأنهم سينجحون بالفعل. يجب أن يسمح إصلاح OpenSSL لهم أيضًا بإسقاط متطلبات OpenSSL 1.0.0 التي قاموا بتوثيقها في خطوات التثبيت الخاصة بهم كما يبدو أن عناصر عميل PSRP فقط هي التي تتطلب تلك المكتبات.

يبدو أن هذا هو أطول سلسلة رسائل يمكنني العثور عليها حول هذه المشكلة ، لذلك اعتقدت أنه من الأفضل النشر هنا. يسعدنا إنشاء مشكلة جديدة لتجميع المشكلات المختلفة والحلول / الإصلاحات التي وجدتها حتى نتمكن من توثيقها بشكل صحيح للآخرين الذين يرغبون في تجربتها.

يا @ jborean93 ما العمل حول. أنا في Fedora 32 وهذا أمر يزعجني من خلال متطلبات OpenSSL 1.0.0.

alaurie إذا لم تكن تستخدم omi كلاً من حزمة OpenSSL 1.0.0 و OpenSSL 1.1.0 العالمية في صفحة إصداراتهما . فقط حتى أكون واضحًا ، هذا ليس بأي حال من الأحوال دليلًا رسميًا وهو مجرد شيء أديره بنفسي. اتبع هذه التعليمات على مسؤوليتك الخاصة وتأكد من عمل نسخة احتياطية من أي ملفات تستبدلها.

ما عليك سوى تنزيل حزمة ssl_110.ulinux.x64.rpm وتثبيت أو استخراج RPM. بعد ذلك ، تحتاج إلى نسخ أو ربط /opt/omi/lib/libmi.so بـ /opt/microsoft/powershell/7/libmi.so . من هناك يمكنك التحقق من المكتبة المرتبطة بها بـ ldd

# Before (what's included with PowerShell)
jborean:~/dev/$ ldd /opt/microsoft/powershell/7/libmi.so
ldd: warning: you do not have execution permission for `/opt/microsoft/powershell/7/libmi.so'
        linux-vdso.so.1 (0x00007ffff6fa8000)
        libpthread.so.0 => /lib64/libpthread.so.0 (0x00007fc517d50000)
        libdl.so.2 => /lib64/libdl.so.2 (0x00007fc517d49000)
        libpam.so.0 => /lib64/libpam.so.0 (0x00007fc517d37000)
        libssl.so.1.0.0 => /opt/microsoft/powershell/7/libssl.so.1.0.0 (0x00007fc517cc5000)
        libcrypto.so.1.0.0 => /opt/microsoft/powershell/7/libcrypto.so.1.0.0 (0x00007fc517a5a000)
        libc.so.6 => /lib64/libc.so.6 (0x00007fc517890000)
        /lib64/ld-linux-x86-64.so.2 (0x00007fc517f6b000)
        libaudit.so.1 => /lib64/libaudit.so.1 (0x00007fc517862000)
        libz.so.1 => /lib64/libz.so.1 (0x00007fc517848000)
        libcap-ng.so.0 => /lib64/libcap-ng.so.0 (0x00007fc517840000)

# After (once you symlink libmi.so)
jborean:~/dev/$ ldd /opt/microsoft/powershell/7/libmi.so
        linux-vdso.so.1 (0x00007fffcffec000)
        libpthread.so.0 => /lib64/libpthread.so.0 (0x00007fee443ed000)
        libdl.so.2 => /lib64/libdl.so.2 (0x00007fee443e6000)
        libpam.so.0 => /lib64/libpam.so.0 (0x00007fee443d4000)
        libssl.so.1.1 => /lib64/libssl.so.1.1 (0x00007fee4433d000)
        libcrypto.so.1.1 => /lib64/libcrypto.so.1.1 (0x00007fee44050000)
        libc.so.6 => /lib64/libc.so.6 (0x00007fee43e86000)
        /lib64/ld-linux-x86-64.so.2 (0x00007fee44707000)
        libaudit.so.1 => /lib64/libaudit.so.1 (0x00007fee43e58000)
        libz.so.1 => /lib64/libz.so.1 (0x00007fee43e3e000)
        libcap-ng.so.0 => /lib64/libcap-ng.so.0 (0x00007fee43e36000)

يمكنك أن ترى أنه مرتبط الآن بـ /lib64/libssl.so.1.1 و /lib64/libcrypto.so.1.1 . ليس لدي أي فكرة عن سبب استمرار استخدام حزمة PowerShell الحزمة العامة OpenSSL 1.0.0 عندما يكون الإصدار 1.1.0 متاحًا "رسميًا". ربما كانت هناك بعض المشكلات في الماضي ولكن الاختبار الأساسي يعمل جيدًا بالنسبة لي. بقولك كل هذا ، ربما لا تزال تواجه بعض المشكلات مع libmi like

  • يجب أن يعمل التفاوض (Kerberos / NTLM) ولكني وجدت أنه يعمل فقط في إعدادات محددة للغاية

    • لقد قمت بالفعل بتغيير الكود في إصدار macOS الخاص بي لإصلاح بعض المشكلات المتعلقة بمصادقة GSSAPI في كود OMI

    • بينما يمكنك نظريًا بناء OMI بنفسك باستخدام هذه التغييرات ، فإن هذا الأمر أكثر مشاركة

    • لحسن الحظ ، لا تستخدم O365 / Exchange Online المصادقة التفاوضية ولكن المصادقة الأساسية فقط ، لذا فهذه ليست مشكلة كبيرة

  • لا تقدم OMI أي تحقق من صحة الشهادة عبر HTTPS

    • تحتاج إلى التأكد من إضافة -SessionOption (New-PSSessionOption -SkipCACheck -SkipCNCheck) عند إنشاء PSSession إذا كنت على استعداد لتحمل هذه المخاطرة

بالنسبة للتوزيعات المستندة إلى Debian ، ستكون العملية مماثلة ، فأنت تحتاج فقط إلى أن تكون libmi من .deb وليس .rpm . ضع في اعتبارك أيضًا أن المسارات قد تكون مختلفة. لأولئك منكم على macOS ، وجدت أنك بحاجة دائمًا إلى إنشاء omi بنفسك نظرًا لعدم توفر حزمة رسمية. يحتوي omi fork الخاص بي على تغييرات في الكود الذي سيسمح لك ببنائه على إصدار أحدث من macOS. لدي دليل صغير حول كيفية القيام بكل ذلك لنظام macOS هنا .

@ jborean93 يمكنك فتح إصدار جديد في PowerShell-Docs repo - ربما يوافق فريق MSFT على إضافة

iSazonov يمكنهم المضي قدمًا خطوة واحدة libmi من الإصدار 1.1.0 OMI لذا فإن هذه العملية برمتها غير ضرورية لتوزيعات Linux.

أنا متردد في محاولة متابعة هذا الأمر رسميًا لأن الإجماع المشترك هو أن WSMan على غير Windows هو EOL. عند محاولة إدخال تغييرات على OMI رسميًا لإصلاح بعض المشكلات عندما يتعلق الأمر بالبناء على macOS أو مشكلات مصادقة GSSAPI العامة ، تم إخباري فعليًا بعدم الشكر. إذا كان شخص ما من فريق PowerShell على استعداد لإجراء مزيد من التحقيق في هذا الأمر ، فسأكون سعيدًا لمشاركة العمل الذي قمت به لنظام macOS والنظر في تحديث إصدار libmi المرفق مع PowerShell.

@ jborean93 أرى أنهم انتقلوا إلى OMI 1.6 https://github.com/PowerShell/MMI/blob/master/build.sh#L4 وأتوقع دعم MMI 2.0 OpenSSL 1.1.0.
حزمة PSRP لا تزال على OMI 1.5 ولكن إصدار الحزمة nuget 1.4 https://github.com/PowerShell/psl-omi-provider/blob/master/omi.version - يبدو أن حزمة OMI تدعم 1.1.0 لكنها لا تزال مرتبطة إلى OpenSSL 1.0.0 - نعم؟ ويجب أن نطلب تحديث MSFT لمزيد من حزمة nuget الجديدة المرتبطة بـ OpenSSL 1.1.0 - نعم؟

(أول OMI مع دعم OpenSSL 1.1.0 هو 1.4.0-6 https://github.com/microsoft/omi/releases/tag/v1.4.0-6)

جيثب
ساهم في تطوير PowerShell / MMI من خلال إنشاء حساب على GitHub.
جيثب
مكتبة دعم PSRP Linux. ساهم في تطوير PowerShell / psl-omi-Provider عن طريق إنشاء حساب على GitHub.
جيثب
فتح البنية الأساسية للإدارة v1.4.0-6 مشكلات ملاحظات الإصدار التي تم إصلاحها في هذا الإصدار تم تنظيف تسرب الذاكرة. ميزات جديدة تشغل معظم OMI كمستخدم غير جذر. لأسباب أمنية نتميز ...

الوقت يتأخر بالنسبة لي ، لذا سألقي نظرة أخرى عليه غدًا. فقط بعض الأسئلة:

هل MMI مستخدم بالفعل لعميل WSMan الأصلي. AFAIK يتم استدعاء ملف dll الأصلي لـ libpsrpclient على نظام التشغيل Unix. بينما تستخدم MMI بالفعل libmi خلال OMI ، يبدو أن هذا الريبو يُستخدم لإنشاء Microsoft.Management.Infrastructure.dll الذي تستخدمه مكونات CIM المختلفة. ربما لا يزالون مرتبطين بطريقة ما ولكن يبدو أنه بالنسبة إلى Enter-PSSession فإنه يستدعي طريقة في libpsrpclient والتي تستدعي بعد ذلك طرقًا مختلفة في libmi . يبدو أننا نتأكد من حصولنا على الإصدار الثنائي الأحدث لـ libmi الذي نحتاجه للنظر في عملية الإنشاء ومعرفة كيف يتم جمع libmi فعليًا أثناء عملية الإنشاء.

إن موفر psl-omi-AFAIK هو المكوِّن الإضافي للخادم ولا يرتبط بأي أنشطة قائمة على العميل. أنا متأكد من أن العمل سيكون لطيفًا ولكن بصراحة أعتقد أن جانب العميل هو أهم جزء في هذه القصة.

نحتاج إلى إلقاء نظرة على عملية الإنشاء ومعرفة كيفية جمع libmi فعليًا أثناء عملية الإنشاء.

PaulHigin هل يمكنك أن توضح كيف نحصل على libmi في توزيع PowerShell؟ إذا كانت تأتي من حزمة PSPR ، فهل من الممكن تحديث الحزمة إلى إصدار OMI جديد أكثر (إلى 1.5 أو 1.6)؟

لم نعد ندعم WinRM / OMI. أعتقد أن جزءًا من السبب هو أن OMI نفسها لم تعد تدعم. @ TravisEz13 قد تكون قادرة على تقديم المزيد من المعلومات.

سؤالي يأتي من حقيقة أن هناك بالفعل تناقض - تم نقل MMI إلى الإصدار الجديد قبل بضعة أشهر ولكن PSPR لم يكن كذلك - وكلاهما يشير إلى libmi. أتوقع أن تقوم MSFT بإجراء التحديث _minor_ لحزمة PSPR وإغلاق العديد من الأسئلة حول هذه المشكلة.

PaulHigin هل يمكنك أن توضح كيف نحصل على libmi في توزيع PowerShell؟ إذا كانت تأتي من حزمة PSPR ، فهل من الممكن تحديث الحزمة إلى إصدار OMI الأحدث (إلى 1.5 أو 1.6)؟

سيتعين عليك أن تطلب من فريق OMI ذلك ، وقد قالوا إنهم لن يقوموا بإجراء تغييرات أو إصدارات لـ PowerShell.

@ TravisEz13 سؤالي عن تحديث إصدار OMI في https://github.com/PowerShell/psl-omi-provider/blob/master/omi.version

جيثب
مكتبة دعم PSRP Linux. ساهم في تطوير PowerShell / psl-omi-Provider عن طريق إنشاء حساب على GitHub.

@ TravisEz13 قد لا يقوم فريق OMI بإنشاء أي إصدارات أخرى لك ولكن ما يمنعك من استخدام أحد الإصدارات الحالية بنفسك. يبدو أنك تفعل هذا حاليًا لـ MMI ، فلماذا يختلف عميل WSMan. من الواضح أنه يمكنك استخدام أحد الإصدارات الأحدث المتوافقة مع OpenSSL 1.1.x وإسقاط متطلبات OpenSSL 1.0.x التي أصبحت قديمة وربما غير آمنة.

قد يتم إهمال هذا الإعداد بالكامل ولكن بالنسبة لي من الواضح أنه لا تزال هناك حالة استخدام لاستخدام WSMan. لماذا لا نحاول أن يكون PowerShell أكثر فائدة على الأنظمة الأساسية بخلاف Windows.

من الواضح أنه يمكنك استخدام أحد الإصدارات الأحدث المتوافقة مع OpenSSL 1.1.x وإسقاط متطلبات OpenSSL 1.0.x التي أصبحت قديمة وربما غير آمنة.

@ jborean93 هذا هو عكس واضح. OMI معطلة بشكل أساسي. إذا انتقلنا إلى 1.1 ، فسنكسر توزيعات (segfault pwsh) التي تستخدم 1.0. انها ليست بداية. يرفض OMI إصلاح المشكلة الأساسية المتمثلة في عدم تحميل المكتبات بشكل صحيح ، مما يتسبب في حدوث segfaults.

إذا انتقلنا إلى 1.1 ، فسنكسر توزيعات (segfault pwsh) التي تستخدم 1.0

لذا استخدم فقط libmi الذي تم تجميعه مقابل OpenSSL 1.1 للتوزيعات التي تأتي بالفعل مع OpenSSL 1.1؟ أو الأفضل من ذلك ، اجعل إصدار OpenSSL 1.1 هو الإصدار الافتراضي واستخدم فقط OpenSSL 1.0 الحالي لتلك التي لا تحتوي على 1.1. لماذا يجب علينا إعاقة إنشاءات التوزيعات الأحدث التي يمكنها الاستفادة من libs الأحدث. الجحيم حتى أن بعض التوزيعات الأقدم التي يدعمها PowerShell تقدم كلاً من إصدارات OpenSSL في شكل أو شكل ما.

يرفض OMI إصلاح المشكلة الأساسية المتمثلة في عدم تحميل المكتبات بشكل صحيح ، مما يتسبب في حدوث segfaults.

على الرغم من أنني أفهم تمامًا عدم الرغبة في القيام بمزيد من العمل تقنيًا ، فلا يوجد ما يمنعك من إجراء الإصلاحات بنفسك وتجميعها خصيصًا لـ PowerShell.

أيضًا هل أخطاء seg فيما يتعلق بمشكلة معروفة لا علاقة لها بـ OpenSSL أم مجرد تعليق يفشل في محاولة تحميله بدون libs المطلوبة؟ إذا كان الأمر يتعلق بعدم توفر libs ، فلديك بالفعل هذه المشكلة في توزيعات أحدث لا تأتي مع OpenSSL 1.0.x. لماذا يجب إعاقة التوزيعات الأحدث بنفس الطريقة التي تذكر بها إعاقة التوزيعات الأقدم إذا تم تحديث الحزمة؟

من مستهلك PowerShell ، هذا أمر محبط للغاية لرؤية أن المكونات الأساسية للغة غير متوفرة خارج مضيفي Windows. عدم القدرة على استخدام WSMan كعميل يمنعني ليس فقط إدارة مضيفي Windows الحاليين من مضيف غير Linux ولكن كما ينص عنوان هذه المشكلة ، فإنه يمنعني من استخدام PowerShell لإدارة الخدمة عبر الإنترنت مثل O365 أو Exchange Online. إن الاضطرار إلى تشغيل Windows فقط لإدارة هذه الخدمات يطير بالفعل في مواجهة دعم النظام الأساسي الذي يقدمه PowerShell عادةً. أعلم أنه تم إيقاف العمل به بالكامل ، ولكن بدون وجود بديل ، ستستمر في محاولة جعل الأشخاص يحاولون تشغيله وسيصابون بالإحباط لأنه لا يفعل ذلك. ما يزعجني حقًا هو أنه يمكن أن ينجح بالفعل ولكن هناك رغبة قليلة أو معدومة من فريق PowerShell لتحقيق ذلك بالفعل. يبدو أن الفريق راضٍ عن إبقاء الأشياء في حالة الانهيار الحالية وتقديم الابتذال لاستخدام وسيلة نقل أحدث مثل ssh والتي لن تعمل في هذه المواقف.

أنا آسف لكوني صريحًا ، أنا حقًا أقدر الوقت والجهد الذي بذلته أنت وفريقك في هذه اللغة. ستكون هذه محاولتي الأخيرة لمحاولة جعل الإعداد خارج الصندوق أكثر قابلية للاستخدام للمستخدمين النهائيين. إذا لم يتم التوصل إلى توافق في الآراء ، فسأستمر في الحصول على الحلول الخاصة بي التي يمكن للآخرين اتباعها إذا رغبوا في ذلك.

@ jborean93 تم طرح أسئلتك مسبقًا والإجابة عليها في هذا الموضوع.

لقد قدمت https://github.com/MicrosoftDocs/PowerShell-Docs/issues/6491 لتوثيق أن OMI ( libmi ) لا يدعمها PowerShell.

مجرد لمعلوماتك لأي شخص لا يزال مهتمًا بجعل OMI يعمل على Linux / macOS. لقد فتحت للتو مفترقتي لـ OMI repo الذي يتضمن مجموعة واسعة من الإصلاحات لجعل الأشياء تعمل بشكل صحيح في PowerShell. أنت أكثر من موضع ترحيب لإلقاء نظرة والتلاعب بها إذا كنت ترغب في ذلك. لقد كتبت أيضًا منشورًا في مدونة بعنوان صادفتها .

يرجى أن تضع في اعتبارك أن هذا ليس تابعًا لشركة Microsoft أو فريق PowerShell / OMI بأي شكل من الأشكال. التغييرات الخاصة بي ولا تأتي مع ضمانات الدعم. سأبذل قصارى جهدي للمساعدة في أي مشكلات يتم فتحها هناك إذا كنت لا تزال تواجه مشكلات مع الشوكة.

كانت اليوم هي المرة الأولى التي أستخدم فيها PowerShell وأشعر بخيبة أمل بالفعل.
ثلاث سنوات ولا حل ...

PowerShell 7.0.3

Warning: [email protected] 1.1.1g is already installed and up-to-date
To reinstall 1.1.1g, run `brew reinstall [email protected]`
$Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://outlook.office365.com/powershell-liveid/ -Credential $UserCredential -Authentication Basic -AllowRedirection

New-PSSession: تتطلب مجموعة المعلمات هذه WSMan ، ولم يتم العثور على مكتبة عميل WSMan مدعومة. WSMan إما أنه غير مثبت أو غير متوفر لهذا النظام.

إذا قلت إن أحد تبعية PowerShell تم إهماله ولكن هذه التبعية مطلوبة لتكوين DKIM في Exchange 365 ، فأنت تقول إن Exchange 365 تم إهماله بما في ذلك جميع المستندات التي تستخدم البرامج المعطلة:

https://docs.microsoft.com/en-us/microsoft-365/security/office-365-security/use-dkim-to-validate-outbound-email؟view=o365-worldwide#SetUpDKIMO365

هل أحتاج إلى شراء جهاز كمبيوتر يعمل بنظام Windows فقط للحصول على بعض مفاتيح DKIM في Exchange؟

لا تزال ثلاث سنوات تمثل خطأ ، وبدلاً من تقديم Microsoft حلاً وتحديث تبعياتهم ، يحتاج الأشخاص غير التابعين لـ Microsoft إلى تقديم مفترقات وحلول بديلة.

دليل على العجز.

هل كانت هذه الصفحة مفيدة؟
0 / 5 - 0 التقييمات