मेरे पास उपयोगकर्ता का नेटवर्क लॉगिन नाम है। PowerShell और WMI से उस उपयोगकर्ता के लिए एक वैध ईमेल प्राप्त करना संभव है? ध्यान दें कि लॉगिन नाम ईमेल में नाम से अलग है, इसलिए मैं केवल लॉगिन डोमेन को ईमेल डोमेन से जोड़ नहीं सकता हूं।उपयोगकर्ता नाम से PowerShell और WMI के माध्यम से उपयोगकर्ता का ईमेल पता प्राप्त करें?
उत्तर
एक्टिव-डायरेक्टरी का उपयोग करने का सबसे आसान तरीका है।
जैसा कि आप पावरशेल टैग का उपयोग कर रहे हैं और PowerShell V2.0 नहीं, आप ADSI का उपयोग कर सकते हैं।
Clear-Host
$dn = New-Object System.DirectoryServices.DirectoryEntry ("LDAP://WM2008R2ENT:389/dc=dom,dc=fr","[email protected]","Pwd")
# Look for a user
$user2Find = "user1"
$Rech = new-object System.DirectoryServices.DirectorySearcher($dn)
$rc = $Rech.filter = "((sAMAccountName=$user2Find))"
$rc = $Rech.SearchScope = "subtree"
$rc = $Rech.PropertiesToLoad.Add("mail");
$theUser = $Rech.FindOne()
if ($theUser -ne $null)
{
Write-Host $theUser.Properties["mail"]
}
तुम भी फिल्टर में userPrincipalName
बजाय sAMAccountName
उपयोग कर सकते हैं, userPrincipalName
के लिए आप उपयोगकर्ता @ डोमेन फार्म का उपयोग कर सकते हैं।
WMI का उपयोग: आप absolutly WMI के साथ यह करने के लिए चाहते हैं।
$user2Find = "user1"
$query = "SELECT * FROM ds_user where ds_sAMAccountName='$user2find'"
$user = Get-WmiObject -Query $query -Namespace "root\Directory\LDAP"
$user.DS_mail
आप अपने सर्वर पर या डोमेन के अंदर एक कंप्यूटर से localy दूसरा समाधान का उपयोग कर सकते हैं, लेकिन यह डोमेन के बाहर से WMI को प्रमाणित करने में थोड़ा और अधिक जटिल है।
PowerShell 2.0 का उपयोग
Import-Module activedirectory
$user2Find = "user1"
$user = Get-ADUser $user2Find -Properties mail
$user.mail
यहाँ एक और संभव तरीके (original source) है:
PS> [adsisearcher].FullName
System.DirectoryServices.DirectorySearcher
PS> $searcher = [adsisearcher]"(objectClass=user)"
PS> $searcher
CacheResults : True
ClientTimeout : -00:00:01
PropertyNamesOnly : False
Filter : (objectClass=user)
PageSize : 0
PropertiesToLoad : {}
ReferralChasing : External
SearchScope : Subtree
ServerPageTimeLimit : -00:00:01
ServerTimeLimit : -00:00:01
SizeLimit : 0
SearchRoot :
Sort : System.DirectoryServices.SortOption
Asynchronous : False
Tombstone : False
AttributeScopeQuery :
DerefAlias : Never
SecurityMasks : None
ExtendedDN : None
DirectorySynchronization :
VirtualListView :
Site :
Container :
PS> $searcher = [adsisearcher]"(samaccountname=$env:USERNAME)"
PS> $searcher.FindOne().Properties.mail
मुझे काम करने के लिए इस जवाब में केवल दो अंतिम पंक्तियों की आवश्यकता थी। –
नहीं WMI है, लेकिन यह काम बस के रूप में अच्छी तरह से कर सकते हैं:
PS> ([adsi]"WinNT://$env:USERDOMAIN/$env:USERNAME,user").Properties["mail"]
- 1. गिट क्ली: उपयोगकर्ता नाम से उपयोगकर्ता जानकारी प्राप्त करें
- 2. Outlook 2007 में वर्तमान उपयोगकर्ता का ईमेल पता प्राप्त करें
- 3. ईमेल पते से फेसबुक उपयोगकर्ता आईडी प्राप्त करें
- 4. आईडी से उपयोगकर्ता नाम
- 5. जावा - ओएस लॉग-उपयोगकर्ता नाम (डोमेन से) कैसे प्राप्त करें?
- 6. ConnectionStringSettings से उपयोगकर्ता और पासवर्ड प्राप्त करें
- 7. प्रक्रिया आईडी से उपयोगकर्ता नाम का पता लगाना
- 8. एएसपी.नेट एमवीसी डिफ़ॉल्ट मेमर्सशिप मॉडल से उपयोगकर्ता ईमेल पता कैसे प्राप्त करें?
- 9. सी # - प्रतिबिंब के माध्यम से सरल प्रकार के उपयोगकर्ता के अनुकूल नाम प्राप्त करें?
- 10. उपयोगकर्ता प्रमाणीकरण के लिए उपयोगकर्ता नाम के बजाय ईमेल का उपयोग कैसे करें?
- 11. उपयोगकर्ता नाम के माध्यम से यूट्यूब चैनल तस्वीर कैसे प्राप्त करें?
- 12. अद्वितीय और अंतिम नाम से अद्वितीय उपयोगकर्ता नाम उत्पन्न करें?
- 13. WCF सर्वर पक्ष से Windows उपयोगकर्ता नाम प्राप्त करें
- 14. फेसबुक OAuth पुनः प्राप्त उपयोगकर्ता ईमेल
- 15. जावास्क्रिप्ट से HTTP बेसिक ऑथ उपयोगकर्ता नाम प्राप्त करें?
- 16. शेयरपॉइंट वर्तमान उपयोगकर्ता खाता नाम प्राप्त करें?
- 17. उपयोगकर्ता नाम <इनपुट प्रकार = "फ़ाइल" /> के माध्यम से फ़ाइल का चयन करते समय फ़ाइल नाम कैसे प्राप्त करें?
- 18. जीमेल संदर्भ गैजेट में उपयोगकर्ता नाम प्राप्त करें
- 19. विंडोज उपयोगकर्ता नाम प्राप्त करें - विभिन्न विधियां
- 20. उपयोगकर्ता नाम, पहला नाम, अंतिम नाम और ईमेल के लिए सक्रिय निर्देशिका क्वेरी
- 21. संपर्क आईडी के माध्यम से किसी उपयोगकर्ता से फेसबुक आईडी कैसे प्राप्त करें?
- 22. जिरा उपयोगकर्ता पते से ईमेल भेजें
- 23. सही उपयोगकर्ता नाम और पासवर्ड दे रहा है, ओआरए -01017 प्राप्त करें: अवैध उपयोगकर्ता नाम/पासवर्ड; लॉगऑन से इनकार किया
- 24. उपयोगकर्ता नाम
- 25. preg_match() और उपयोगकर्ता नाम
- 26. उम्ब्राको में सदस्यों से संपत्तियां प्राप्त करें (उपयोगकर्ता नियंत्रण में)
- 27. हेक्स वैल्यू के माध्यम से रंग का नाम प्राप्त करना?
- 28. Google एक्सेस टोकन के साथ उपयोगकर्ता ईमेल कैसे प्राप्त करें?
- 29. उपयोगकर्ता नाम
- 30. डेविस - उपयोगकर्ता द्वारा ईमेल
वाह, क्या एक पूरा जवाब है! धन्यवाद! डब्ल्यूएमआई संस्करण मेरे लिए काम करता है। मैं 2.0 संस्करण भी कोशिश करूंगा। –