关于Add-azure帐户/注销12小时后,是否从未注销?

时间:2015-12-07 16:51:52

标签: powershell azure logging

我是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上运行一个脚本,

  1. powershell会在12小时后自动注销,换句话说,在登录后12小时后,我的脚本无法正常工作吗?
  2. anywahy写一个脚本永远不会让我退出,所以我不需要担心这个12小时的问题而且我的脚本会永远运行。
  3. 非常感谢你。

2 个答案:

答案 0 :(得分:1)

请您分享您尝试按小时运行的PS代码,这对理解问题非常有帮助。

  1. 自动退出时间帐户的时间没有硬性限制。从逻辑上讲,如果发生这种情况,调度和自动化可能不会在Azure中发展得那么大。每12小时后登录并再次运行自动化或调度程序非常繁琐。希望你理解。

  2. 而是保留一个逻辑,允许在每12个小时后使用一些无限循环或递归调用来触发作业。对于Ex。一旦作业完成,使用PS代码让它休眠3600 * 12秒,然后再回电。

    start-sleep -seconds 43200

答案 1 :(得分:0)

您可以尝试使用PublishSettings身份验证方法,这样您就可以下载凭据文件,将其加载到Powershell中,然后进行身份验证,直到该凭据文件不再有效。这是我使用Azure进行身份验证的方式,不需要额外的维护。

编辑:如果您有权访问多个Azure订阅,则可能必须通过调用Select-AzureSubscription来选择要使用的订阅。如果您需要,这可能是您的powershell脚本的第一行。