簡體   English   中英

有沒有一種方法可以在不使用AD身份驗證的情況下訪問Azure密鑰庫?

[英]Is there a way to access azure key vault without using AD authentication?

我想使用我的azure憑據訪問我的azure密鑰庫中的機密,而不使用Azure AD App身份驗證。 有沒有辦法?

謝謝

您需要使用服務主要名稱來解密密鑰。 因此,不幸的是,答案是否定的。

我們可以使用C#代碼中的Azure PowerShell腳本來實現。 為此,我們僅需要密鑰庫的名稱,秘密名稱和想要訪問它的用戶的Azure憑據。

    static void Main(string[] args)
    {
            Program program = new Program();
            string scriptText = "Login-AzureRmAccount";
            string result = program.RunScript(scriptText);
            Console.WriteLine(result);
            Console.ReadLine();
    }

    private string RunScript(string scriptText)
    {

        Runspace runspace = RunspaceFactory.CreateRunspace();
        runspace.Open();        
        Pipeline pipeline = runspace.CreatePipeline();
        pipeline.Commands.AddScript(scriptText);
        pipeline.Commands.AddScript("$secret = Get-AzureKeyVaultSecret -VaultName '[Name_of_keyVault]' -Name '[Name_of_secret]'");
        pipeline.Commands.AddScript("Write $secret.SecretValueText");
        Collection<PSObject> results = pipeline.Invoke();           
        runspace.Close();            
        StringBuilder stringBuilder = new StringBuilder();
        foreach (PSObject obj in results)
        {
            stringBuilder.AppendLine(obj.ToString());
        }
        return stringBuilder.ToString();
    }

實際上,我想在沒有AD應用程序身份驗證的情況下訪問密鑰庫。 這是我能想到的唯一方法。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM