imds-credential-server
imds-credential-server copied to clipboard
Support .NET Framework on Windows
AWS SDK for .NET Framework calls /latest/meta-data/iam/security-credentials, but the server code is listening for /latest/meta-data/iam/security-credentials/.
Given
- A .NET Framework project
Before
❯ .\imds-credential-server.exe --profile myprofile --port 12345
Identity: arn:aws:sts::123456789012:assumed-role/AWSReservedSSO_myrole_abc123/[email protected]
2024/09/16 10:57:42 PUT /latest/api/token
2024/09/16 10:57:42 GET /latest/meta-data/iam/security-credentials
2024/09/16 10:57:42 PUT /latest/api/token
2024/09/16 10:57:42 GET /latest/meta-data/iam/security-credentials
2024/09/16 10:57:42 GET /latest/meta-data/iam/security-credentials
2024/09/16 10:57:42 GET /latest/meta-data/iam/security-credentials
2024/09/16 10:57:43 GET /latest/meta-data/iam/security-credentials
2024/09/16 10:57:43 GET /latest/meta-data/iam/security-credentials
After
> .\imds-credential-server.exe --profile myprofile --port 12345
Identity: arn:aws:sts::123456789012:assumed-role/AWSReservedSSO_myrole_abc123/[email protected]
2024/09/16 10:54:14 PUT /latest/api/token
2024/09/16 10:54:14 GET /latest/meta-data/iam/security-credentials
2024/09/16 10:54:14 PUT /latest/api/token
2024/09/16 10:54:14 GET /latest/meta-data/iam/security-credentials/AWSReservedSSO_myrole_abc123
Compare
Compare with the logs for AWS CLI requests
> .\imds-credential-server.exe --profile myprofile --port 12345
Identity: arn:aws:sts::123456789012:assumed-role/AWSReservedSSO_myrole_abc123/[email protected]
2024/09/16 10:59:36 PUT /latest/api/token
2024/09/16 10:59:36 GET /latest/meta-data/placement/availability-zone/
2024/09/16 10:59:36 PUT /latest/api/token
2024/09/16 10:59:36 GET /latest/meta-data/iam/security-credentials/
2024/09/16 10:59:36 GET /latest/meta-data/iam/security-credentials/AWSReservedSSO_myrole_abc123