创建并使用token示例:
TOKEN=`curl -X PUT "http://100.100.100.200/latest/api/token" -H "X-aliyun-ecs-metadata-token-ttl-seconds: 21600"` \
&& curl -H "X-aliyun-ecs-metadata-token: $TOKEN" http://100.100.100.200/latest/meta-data/instance-id
示例说明如下:
- 通过PUT方法创建一个有效期为21600秒(6小时)的token。
- 使用变量TOKEN存储token。
- 访问实例元数据中的ECS实例ID,并在请求中填入了token变量名称$TOKEN。
在token有效期内可以重复使用token,使用已有token示例:
curl -H "X-aliyun-ecs-metadata-token: $TOKEN" http://100.100.100.200/latest/meta-data/instance-id
错误示例:
- 有效期过长。
curl -X PUT "http://100.100.100.200/latest/api/token" -H "X-aliyun-ecs-metadata-token-ttl-seconds: 21700"
- 创建token的请求中存在X-Forwarded-For标头。
curl -X PUT "http://100.100.100.200/latest/api/token" -H "X-Forwarded-For: www.ba****.com"
- 访问实例元数据时指定的token无效。
curl -H "X-aliyun-ecs-metadata-token: aaa" -v http://100.100.100.200/latest/meta-data/