以编程方式列出当前的AWS支持计划?(AWSPowerShell或AWS CLI 1/2)

mnemlml8  于 2022-11-10  发布在  Shell
关注(0)|答案(3)|浏览(186)

我希望以编程方式列出我当前在AWS(基本、商业、企业入站、企业)中处于活动状态的支持计划。我在AWS的AWSPowerShell帮助或AWS CLI帮助中找不到它。
是否可以使用AWS CLI或AWSPowerShell以编程方式找到此值?请求的呼叫和输出将类似于:
C:\> Get-CurrentPremiumSupportPlan
输出:"Business"
参考资料:

dgjrabp2

dgjrabp21#

如果您使用的是开发人员计划,则上面的答案不起作用,因此使用cURL的另一种选择:

curl https://service.supportplans.us-east-2.api.aws/v1/getSupportPlan \
--user ${AWS_ACCESS_KEY_ID}:${AWS_SECRET_ACCESS_KEY} \
--aws-sigv4 "aws:amz:us-east-2:supportplans" -H "x-amz-security-token: \ 
${AWS_SESSION_TOKEN}" | jq '.supportPlan.supportLevel'

确保将您的AWS凭据放入您的环境中,例如AWS_ACCESS_KEY_ID、AWS_SECRET_ACCESS_KEY和AWS_SESSION_TOKEN。

2wnc66cl

2wnc66cl2#

发自本文:https://aws.amazon.com/blogs/mt/aws-partners-determine-aws-support-plans-in-organization/
这似乎不能直接完成(不存在一些API调用来获取支持计划),但您可以使用Describe-Severity-LevelAPI并根据响应来确定您拥有哪个支持计划。

  • 如果AWS帐户有企业支持计划,则返回的最高严重级别为严重和紧急。
  • 如果客户有业务支持计划,则返回的最高严重性级别为紧急。
  • 对于开发者支持计划,返回的严重性级别为低和正常。
  • 如果当前未启用AWS高级支持计划,则会返回以下错误:“调用DescribeSeverityLeveles操作时出现错误(SubscriptionRequiredException):需要AWS高级支持订阅才能使用此服务。”
csbfibhn

csbfibhn3#

与公认的答案类似,下面是我使用的答案:

SUPPORT_STATUS=$(eval aws support describe-severity-levels --region us-east-1 2>&1)
    if [[ "$SUPPORT_STATUS" == *"SubscriptionRequiredException"* ]]; then
        echo "No Support Enabled for account"
    elif [[ "$SUPPORT_STATUS" == *"AccessDeniedException"* ]]; then
        echo "Access denied or roles not properly setup"
    elif [[ "$SUPPORT_STATUS" == *"critical"* ]]; then
        echo "Enterprise Support already enabled for account..."
    elif [[ "$SUPPORT_STATUS" == *"urgent"* ]]; then
        echo "Only Business Level Support enabled for account..."
    elif [[ "$SUPPORT_STATUS" == *"high"* ]]; then
        echo "Only Developer Level Support enabled for account..."
    fi

...此外,我相信他们即将发布通过本机API管理支持计划的功能,就像https://docs.aws.amazon.com/awssupport/latest/user/security-support-plans.html几天前通过以下操作添加的那样:

supportplans:GetSupportPlan
supportplans:GetSupportPlanUpdateStatus
supportplans:StartSupportPlanUpdate

不过,它仍然没有击中AWS CLI和Boto。

相关问题