我是Azure Powershell的新手,我已经使用Powershell 2周了
几乎每天早上,我都要“Add-AzureAccount”登录,因为12小时后,Azure Powershell会自动注销。这就是我所理解的
Add-AzureAccount : The given key was not present in the dictionary
但是,今天早上我不需要Add-AzureAccount,它已经登录了,我没有在这个周末使用Azure Powershell。这发生在之前,这真的让我很困惑,因为我很难理解这个“12小时自动退出”。有一次,我不得不卸载/重新安装powershell
我之所以问这个问题的原因是我的老板要我写一个脚本,每隔一小时,Powershell从Azure获取信息到CSV.file,所以我在Powershell上创建了一个脚本,每隔一小时运行一次使用任务计划程序 https://www.youtube.com/watch?v=oJ4nktysxnE,所以我担心我的脚本无效,因为这12小时退出。
所以我认为我必须找到一种方法,在12小时后永远不会将自己从azure中注销,因为我认为每12个小时,我不得不这样做“Add-AzureAccount进程”
但今天早上我不需要添加-AzAanAccount
我的问题是
我像上面提到的那样,每隔一小时在Powershell上运行一个脚本,
非常感谢你。
答案 0 :(得分:1)
请您分享您尝试按小时运行的PS代码,这对理解问题非常有帮助。
自动退出时间帐户的时间没有硬性限制。从逻辑上讲,如果发生这种情况,调度和自动化可能不会在Azure中发展得那么大。每12小时后登录并再次运行自动化或调度程序非常繁琐。希望你理解。
而是保留一个逻辑,允许在每12个小时后使用一些无限循环或递归调用来触发作业。对于Ex。一旦作业完成,使用PS代码让它休眠3600 * 12秒,然后再回电。
start-sleep -seconds 43200
答案 1 :(得分:0)
您可以尝试使用PublishSettings身份验证方法,这样您就可以下载凭据文件,将其加载到Powershell中,然后进行身份验证,直到该凭据文件不再有效。这是我使用Azure进行身份验证的方式,不需要额外的维护。
编辑:如果您有权访问多个Azure订阅,则可能必须通过调用Select-AzureSubscription来选择要使用的订阅。如果您需要,这可能是您的powershell脚本的第一行。