Uzak masaüstü bağlantısının kısayolunu nasıl oluşturabilirim ve şifreyi nasıl ekleyebilirim?


13

Uzak bir masaüstü bağlantısını doğrudan bir kısayoldan açmak istiyorum ve kullanıcı adı parolasını kısayolun içine yerleştirmek istiyorum.

Uzak masaüstünün yolunu bir RDP kısayolundan nasıl alabilirim ve bir RDP kısayolunda parola ayarlayabilir miyiz?


Yanıtlar:


12

RDP dosyasını kaydederken Parolamı kaydet onay kutusunu işaretleyin. Bu, şifrenizi .RDPdosyaya şifrelenmiş bir biçimde kaydeder. Yine de dikkatli olun, çünkü insanlar nasıl şifresini çözeceğini öğrendiler :

alternatif metin


not defterinde RDP dosyasını açmak için manuel olarak şifre nasıl eklenir
Metal Gear Solid

Bu artık MSTSC v6 ile ilgili bir sorun değil - kimlik bilgileri sistemin başka bir yerinde saklanıyor (Yerel Ayarlar \ Uygulama Verileri \ Microsoft \ Credentials) ve bildiğim kadarıyla kullanıcının giriş şifresi ile şifreleniyorlar.
user1686

Zaten RDP dosyam var. Dosyayı düzenlemek ve şifre girmek istiyorum
metal dişli katı

@ Dosyaya şifreyi şifrelenmiş bir biçimde kaydeder, açmak ve yazmak kadar basit değildir password:abc123. Onları bu formata şifrelemek için bir araç bulabilirseniz, ancak birinin böyle bir araç yapmaktan rahatsız olacağından şüpheliyim.
John T

Windows 7'de şifre girme / kaydetme seçeneği yoktur. Yardımcı olabilir misiniz?
digitguy

5

.Rdp dosyalarını doğrudan düzenlemeyi deneyin. Ben rdp şifreleri nasıl şifreli , nasıl ve derin aşağı, yazılarda, C # de bunu yapmak için bazı kod olduğunu söyleyerek bir makale buldum :

using System;
using System.Collections.Generic;
using System.Runtime.InteropServices;
using System.ComponentModel;
using System.Security.Cryptography;
using System.Linq;
using System.Text;

class Mstscpw
{
    private const int CRYPTPROTECT_UI_FORBIDDEN = 0x1;
    // Wrapper for the NULL handle or pointer.
    static private IntPtr NullPtr = ((IntPtr)((int)(0)));
    // Wrapper for DPAPI CryptProtectData function.
    [DllImport("crypt32.dll", SetLastError = true,
    CharSet = System.Runtime.InteropServices.CharSet.Auto)]
    private static extern bool CryptProtectData(
    ref DATA_BLOB pPlainText,
    [MarshalAs(UnmanagedType.LPWStr)]string szDescription,
    IntPtr pEntroy,
    IntPtr pReserved,
    IntPtr pPrompt,
    int dwFlags,
    ref DATA_BLOB pCipherText);
    // BLOB structure used to pass data to DPAPI functions.
    [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Unicode)]
    internal struct DATA_BLOB
    {
        public int cbData;
        public IntPtr pbData;
    }

    private static void InitBLOB(byte[] data, ref DATA_BLOB blob)
    {
        blob.pbData = Marshal.AllocHGlobal(data.Length);
        if (blob.pbData == IntPtr.Zero)
            throw new Exception("Unable to allocate buffer for BLOB data.");

        blob.cbData = data.Length;
        Marshal.Copy(data, 0, blob.pbData, data.Length);
    }

    public string encryptpw(string pw)
    {
        byte[] pwba = Encoding.Unicode.GetBytes(pw);
        DATA_BLOB dataIn = new DATA_BLOB();
        DATA_BLOB dataOut = new DATA_BLOB();
        StringBuilder epwsb = new StringBuilder();
        try
        {
            try
            {
                InitBLOB(pwba, ref dataIn);
            }
            catch (Exception ex)
            {
                throw new Exception("Cannot initialize dataIn BLOB.", ex);
            }

            bool success = CryptProtectData(
            ref dataIn,
            "psw",
            NullPtr,
            NullPtr,
            NullPtr,
            CRYPTPROTECT_UI_FORBIDDEN,
            ref dataOut);

            if (!success)
            {
                int errCode = Marshal.GetLastWin32Error();
                throw new Exception("CryptProtectData failed.", new Win32Exception(errCode));
            }

            byte[] epwba = new byte[dataOut.cbData];
            Marshal.Copy(dataOut.pbData, epwba, 0, dataOut.cbData);
            // Convert hex data to hex characters (suitable for a string)
            for (int i = 0; i < dataOut.cbData; i++)
                epwsb.Append(Convert.ToString(epwba[i], 16).PadLeft(2, '0').ToUpper());
        }
        catch (Exception ex)
        {
            throw new Exception("unable to encrypt data.", ex);
        }
        finally
        {
            if (dataIn.pbData != IntPtr.Zero)
                Marshal.FreeHGlobal(dataIn.pbData);

            if (dataOut.pbData != IntPtr.Zero)
                Marshal.FreeHGlobal(dataOut.pbData);
        }
        return epwsb.ToString();
    }
}
// Test code:
class program
{
    static void Main(string[] args)
    {
        Mstscpw mstscpw = new Mstscpw();
        string epw = mstscpw.encryptpw("password");
        Console.WriteLine("Encrypted password for \"password\" {0} characters: \r\n{1}", epw.Length, epw);
        Console.ReadLine();
    }
}


0

Kısmen doğru, Microsoft Kimlik Bilgilerini gerçekten kolayca düzenleyemezsiniz ve komut değil rdp, ancak komutu çalıştırırsanız mstscWinXP'deki 'parolayı kaydet' sorununu düzeltir.

Uzak Masaüstüne Komut Satırı İle Erişme

mstsc [<connection file>] [/v:<server[:port]>] [/admin] [/f[ullscreen]] [/w:<width>] [/h:<height>] [/public] | [/span] [/edit "connection file"] [/migrate] [/?]

Bir CMD penceresi açın, yazın mstsc, PC adını veya IP'sini girin, Seçenekler'i tıklayın ve neşeli yolunuza devam edin, ancak Farklı Kaydet ... yapın, böylece daha sonra kullanmak için bir çalışma kısayoluna sahip olursunuz.


0

Alternatif olarak aşağıdaki satırlarla bir toplu iş komut dosyası (.bat) oluşturun:

cmdkey /generic:"computername or IP" /user:"username" /pass:"password" mstsc /v:"computer name or IP"

Koddaki IP, kullanıcı adı ve parolayı geçerli kimlik bilgileriyle değiştirin.

Şimdi betiği çift tıklatarak çalıştırın.

Bu çalışıyor.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.