0

我正在尝试将 AWS boto3 用于我的应用程序。查看 boto3 文档后,我找不到计费 API。我的应用程序的目的是检查我是否有权访问成本和使用情况报告。如果我没有(如图所示),我希望脚本通知我: 在此处输入图像描述

我怎样才能检查它?我使用的凭据是我在担任角色后获得的凭据,我尝试了以下操作:

costExplorer = boto3.client(
    'ce',
    aws_access_key_id=credentials['AccessKeyId'],
    aws_secret_access_key=credentials['SecretAccessKey'],
    aws_session_token=credentials['SessionToken']
)

endTime = datetime.now(timezone.utc)
if endTime.month == 1:
    startTime = datetime(endTime.year - 1, endTime.month + 11, endTime.day)
else:
    startTime = datetime(endTime.year, endTime.month - 1, endTime.day)

timePeriod: Dict[str, str] = {
    'Start': startTime.strftime("%Y-%m-%d"),
    'End': endTime.strftime("%Y-%m-%d")
}
# if it raise exception -> Means I don't have access to the Cost & Usage Reports tab
costExplorer.get_cost_and_usage(TimePeriod=timePeriod, Metrics=["UsageQuantity"])

此代码在我无权访问时有效,但在我有权访问时也会引发异常

4

0 回答 0