使用C#(.net)自动执行Windows密码生成支持

时间:2017-09-29 08:59:59

标签: c# .net google-compute-engine

我们可以从下面的链接中看到,我们支持在内置库的帮助下使用Java和Python检索谷歌虚拟机的密码。我们可以使用RDP获取密码和访问VM。 https://cloud.google.com/compute/docs/instances/windows/automate-pw-generation 但我们没有任何图书馆支持在.net中做同样的事情。 我们正在.net中开发应用程序来创建/启动/停止/删除谷歌虚拟机。但是,如果没有该密码,我们无法使用RDP访问该VM。

非常感谢,如果有人会指导使用.net应用程序检索谷歌VM密码。

1 个答案:

答案 0 :(得分:1)

使用启动powershell脚本,有一种可行的解决方法:

df = pd.DataFrame({'Territory':['NY','CA','WT','SK','DE']})
di = {"NY": "Domestic","CA": "Domestic","WT":"OUTSIDE"}
print (df)
  Territory
0        NY
1        CA
2        WT
3        SK
4        DE

df['Territory'] = df['Territory'].map(di).fillna('OVERSEAS')
print (df)
  Territory
0  Domestic
1  Domestic
2   OUTSIDE
3  OVERSEAS
4  OVERSEAS

然后,当您在其元数据中创建新的VM实例时,需要将其设置为启动脚本:

private static string GetNewLocalUserScript(string userName, string password, bool isAdministrator)
{
    var createUserScript = $"New-LocalUser \"{userName}\" -Password (\"{password}\" | ConvertTo-SecureString -AsPlainText -Force) -FullName \"{userName}\"";

    if (isAdministrator)
    {
        createUserScript += $" \r\nAdd-LocalGroupMember -Group \"Administrators\" -Member \"{userName}\"";
    }

    return createUserScript;
}

我知道这是一个较晚的答案,但它可能对某些人有帮助。这没有使用Google的自动生成密码和取回密码的机制,但是当您必须为这些用户帐户设置特定的密码时,它非常有用。