我正在尝试使用Az cli获取Azure AD SPN凭据的到期日期的报告。
我能够使用Az cli“ az ad spredential list”获得报告,但停留在日期转换上。
az ad sp credential list --id xxxxxx-xxx-xxx-xx --query '[].{Key:customKeyIdentifier,expirydate:endDate}' -o table
output:
Expirydate Key
-------------------------------- ---------------
2299-12-30T23:00:00+00:00 Test
2020-01-10T13:13:12.647000+00:00 Qa
2299-12-30T16:00:00+00:00 Dev
是否可以将输出的到期日期转换为标准日期
即2299-12-30T23:00:00 + 00:00-> 30-12-2299
有什么建议吗? 预先感谢。
答案 0 :(得分:0)
我无法找到使用az
cli本身的方法,但这是使用jq
的解决方案
az ad sp credential list --id <sub-id> | jq -r \ '["Expiry Date", "Key"], ["-----------", "---"], (.[] | [(.endDate | (sub("\\.[0-9]+\\+"; "+") | strptime("%Y-%m-%dT%H:%M:%S%z") | mktime | strftime("%d-%m-%Y"))), .customKeyIdentifier // "-"]) | @tsv'
还有扩展版本,以了解发生了什么
az ad sp credential list --id <sub-id> | jq -r \
'
["Expiry Date", "Key"],
["-----------", "---"],
(.[] | [
(
.endDate |
(
sub("\\.[0-9]+\\+"; "+") |
strptime("%Y-%m-%dT%H:%M:%S%z") |
mktime |
strftime("%d-%m-%Y")
)
),
.customKeyIdentifier // "-"
]) |
@tsv
'