Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Powershell-Funktion - Credentials zur Anmeldeinformationsverwaltung (Tresor) hinzufügen (nativ ohne cmdkey.exe)

Mitglied: colinardo

colinardo (Level 5) - Jetzt verbinden

27.05.2014, aktualisiert 04.12.2015, 12100 Aufrufe, 2 Danke

In einem Beitrag kam mal die Frage auf ob sich Anmeldeinformationen nicht ohne eine cmdkey.exe nativ mit Powershell hinzufügen lassen. Ich habe dazu mal eine passende Funktion geschrieben die dies ermöglicht:

01.
function Add-WindowsCredentials { 
02.
param( 
03.
    [parameter(mandatory=$true)][ValidateSet("Windows","Generic")][string]$Type, 
04.
    [parameter(mandatory=$true)][ValidateSet("Session","LocalMachine","Enterprise")][string]$Persistence, 
05.
    [parameter(mandatory=$true)][ValidateNotNullOrEmpty()][string]$Server, 
06.
    [parameter(mandatory=$true)][ValidateNotNullOrEmpty()][string]$Username, 
07.
    [parameter(mandatory=$true)][ValidateNotNullOrEmpty()][string]$Password 
08.
09.
 
10.
$memberdef = @" 
11.
[DllImport("Advapi32.dll", SetLastError=true, EntryPoint="CredWriteW", CharSet=CharSet.Unicode)] 
12.
public static extern bool CredWrite([In] ref Credential userCredential, [In] UInt32 flags); 
13.
 
14.
[StructLayout(LayoutKind.Sequential, CharSet=CharSet.Unicode)] 
15.
public struct Credential 
16.
17.
   public UInt32 flags; 
18.
   public UInt32 type; 
19.
   public IntPtr targetName; 
20.
   public IntPtr comment; 
21.
   public System.Runtime.InteropServices.ComTypes.FILETIME lastWritten; 
22.
   public UInt32 credentialBlobSize; 
23.
   public IntPtr credentialBlob; 
24.
   public UInt32 persist; 
25.
   public UInt32 attributeCount; 
26.
   public IntPtr Attributes; 
27.
   public IntPtr targetAlias; 
28.
   public IntPtr userName; 
29.
30.
"@ 
31.
    Add-Type -MemberDefinition $memberdef -Namespace "ADVAPI32" -Name 'Credentials' 
32.
    $cred = New-Object ADVAPI32.Credentials+Credential 
33.
    $cred.attributeCount = 0 
34.
    $cred.flags = 0 
35.
    $cred.targetName = [System.Runtime.InteropServices.Marshal]::StringToCoTaskMemUni($Server) 
36.
    $cred.userName = [System.Runtime.InteropServices.Marshal]::StringToCoTaskMemUni($Username) 
37.
    $cred.credentialBlobSize = [System.Text.Encoding]::Unicode.GetBytes($Password).length 
38.
    $cred.credentialBlob = [System.Runtime.InteropServices.Marshal]::StringToCoTaskMemUni($Password) 
39.
    # Domain-Credentials oder Generic-Credentials erzeugen 
40.
    switch($Type){ 
41.
        "Domain" {$cred.type = 2} 
42.
        "Generic" {$cred.type = 1} 
43.
44.
    #Erhalten der Credentials: 1 = Session / 2 = Local Machine / 3 = Enterprise 
45.
    switch($Persistence){ 
46.
        "Session" {$cred.persist = 1} 
47.
        "LocalMachine" {$cred.persist = 2} 
48.
        "Enterprise" {$cred.persist = 3} 
49.
50.
    $result = [ADVAPI32.Credentials]::CredWrite([ref]$cred,0) 
51.
    return $result 
52.
}
Die Funktion wird folgendermaßen aufgerufen:
Add-WindowsCredentials -Type Windows -Persistence Session -Server 'SERVER' -Username 'DOMAIN\USERNAME' -Password 'Passw0rd'
Dabei können die Parameter -Type und -Persistence folgende Werte annehmen um zu spezifizieren um welchen Typ es sich handelt und wie dauerhaft die Anmeldeinformationen abgelegt werden:

ParameterMögliche Werte
-Type Generic | Windows
-Persistence Session | LocalMachine | Enterprise

Die anderen Parameter wie Server, Username, Password sollten selbsterklärend sein.

Viel Spaß
Grüße @colinardo

Alle Angaben wie immer ohne Gewähr

Falls der Beitrag gefällt, seid so nett und unterstützt mich durch eine kleine Spende / If you like my contribution please support me and donate
Ähnliche Inhalte
Batch & Shell

Powershell: Googlemail (GMail) nativ mit Powershell verwalten

Anleitung von colinardoBatch & Shell2 Kommentare

1. Vorwort Google bietet über die GMail-API die Voraussetzungen um sein Google-Mail-Konto über diverse Programmierschnittstellen (PHP/Javascript/etc. pp) zu verwalten. ...

Batch & Shell

Powershell elevated

Tipp von AnkhMorporkBatch & Shell2 Kommentare

Ein kleiner Tipp am Rande für alle PS-Novizen (ich wars einfach leid): Um eine Konsole mit elevated rights schnell ...

Batch & Shell

Weiterentwicklung von Powershell

Information von Penny.CilinBatch & Shell

Anbei ein Artikel im Heise Newsticker bzgl. Powershell: Systemverwaltung: PowerShell goes Cross-Plattform

Windows 10

Neue Sicherheits-Features von Windows 10 für Unternehmen (Device Guard und Credential Guard)

Information von colinardoWindows 104 Kommentare

Zwei nennenswerte Neuerungen von Windows 10 welche die Sicherheit von Unternehmensrechnern zusätzlich stärken. Fast unbemerkt hat MS zwei neue ...

Neue Wissensbeiträge
Windows 10
Zero-Day-Lücke in Microsoft Edge
Information von kgborn vor 1 TagWindows 10

In Microsofts Edge-Browser klafft wohl eine nicht geschlossene (0-Day) Sicherheitslücke im Just In Time Compiler (JIT Compiler) für Javascript. ...

Sicherheit
Microsoft und Skype: Sicherheit
Information von kgborn vor 1 TagSicherheit

Die Tage gab es ja einige Berichte zur Sicherheit des Skype-Updaters. Der Updater von Skype läuft unter dem Konto ...

Datenschutz

Behörden ignorieren Sicherheitsbedenken gegenüber Windows 10

Information von Penny.Cilin vor 2 TagenDatenschutz8 Kommentare

Hallo, passend zum Thema Ablösung LIMUX in München ein interessanter Beitrag dazu: Behörden ignorieren Sicherheitsbedenken gegenüber Windows 10 Anscheinend ...

Sicherheit
Information Security Hub Munich airport
Information von brammer vor 2 TagenSicherheit

Hallo, Neues Center für Cyber Kriminalität am Münchener Flughafen brammer

Heiß diskutierte Inhalte
DSL, VDSL
Mindestgeschwindigkeiten DSL Telekom
Frage von justlukasDSL, VDSL14 Kommentare

Hallo zusammen, Seit diesem Jahr habe ich Verständnisprobleme mit dem Verhalten der Telekom. Wir haben seit einem Jahr VDSL ...

Switche und Hubs
LANCOM-Switch: Probleme (no link) mit SFP-Modulen?
Frage von THETOBSwitche und Hubs11 Kommentare

Hi zusammen, ich habe folgendes Problem: Und zwar habe ich an einem Standort drei Switche verbaut - LANCOM GS-2326P+, ...

Humor (lol)
Was könnte man mit einem Server machen? Idee gesucht
Frage von 2SeitenHumor (lol)11 Kommentare

Hey Zusammen Ich habe einen alten HP G2 Rackserver zu Hause rumliegen. 28GB Ram, 1xAMD Prozi mit etwa 2GHz. ...

Firewall
RB2011 Firewall Rule eine bestimmte Mac oder IP Adresse nicht zu blockieren
Frage von lightmanFirewall10 Kommentare

Hallo liebes Forum mit ihren Spezialisten. Ich habe meine Firewall so konfiguriert das kein Endgerät ohne meine Speziellen Erlaubnis ...