AWS Lambda 用于打印运行 lambda 函数的"Current User ID"(非账户 ID)



比方说:

1. User "ABC" logged into AWS console  
-> Execute the lambda function "MyLambda" 
--> Lambda function prints user as "ABC"
2. User "XYZ" logged into AWS console  
-> Execute the lambda function "MyLambda" 
--> Lambda function prints user as "XYZ"

如何在"PYTHON"中编写lambda以实现上述目标?

您似乎正试图通过打印登录/执行器用户Id来重新发明轮子。您可以从CloudTrail获得这些信息。

AWS CloudTrail是一项能够实现治理、合规、,操作审计和AWS账户的风险审计。具有CloudTrail,您可以登录、持续监控和保留帐户与整个AWS基础设施中的操作相关的活动。CloudTrail提供您的AWS帐户活动的事件历史记录,包括操作通过AWS管理控制台、AWS SDK、命令行获取工具和其他AWS服务。此事件历史记录简化了安全性分析、资源更改跟踪和故障排除。

如果您想获取cloudtrail日志,那么在代码中执行类似的操作

response = client.lookup_events(
LookupAttributes=[
{
'AttributeKey': 'EventId'|'EventName'|'ReadOnly'|'Username'|'ResourceType'|'ResourceName'|'EventSource'|'AccessKeyId',
'AttributeValue': 'string'
},
],
StartTime=datetime(2015, 1, 1),
EndTime=datetime(2015, 1, 1),
MaxResults=123,
NextToken='string'
)

最新更新