|
5 | 5 | - [访问凭据](#访问凭据) |
6 | 6 | - [AK、SK设置](#aksk设置) |
7 | 7 | - [STS Token设置](#sts-token设置) |
| 8 | + - [STS AssumeRole示例](#sts-assumerole示例) |
| 9 | + - [STS AssumeRoleWithOidc示例](#sts-assumerolewithoidc示例) |
| 10 | + - [STS AssumeRoleWithSaml示例](#sts-assumerolewithsaml示例) |
8 | 11 | - [EndPoint配置](#endpoint配置) |
9 | 12 | - [自定义Endpoint](#自定义endpoint) |
10 | 13 | - [自定义RegionId](#自定义regionid) |
@@ -133,8 +136,170 @@ try: |
133 | 136 | except ApiException as e: |
134 | 137 | pass |
135 | 138 | ``` |
| 139 | +## STS AssumeRole示例 |
136 | 140 |
|
| 141 | +STS AssumeRole(Security Token Service)是火山引擎提供的临时访问凭证机制。开发者通过服务端调用 STS 接口获取临时凭证(临时 AK、SK 和 Token),有效期可配置,适用于安全要求较高的场景。 |
| 142 | +<br> |
| 143 | +此接口使用IAM子账号角色进行 AssumeRole 操作后,获取到IAM子用户的信息后,发起真正的API请求,参考如下 |
| 144 | +<br> |
| 145 | +连接地址:https://www.volcengine.com/docs/6257/86374 |
| 146 | +> ⚠️ 注意事项 |
| 147 | +> |
| 148 | +> 1. 最小权限: 仅授予调用方访问所需资源的最小权限,避免使用 * 通配符授予全资源、全操作权限。 |
| 149 | +> 2. 设置合理的有效期: 请根据实际情况设置合理有效期,越短越安全,建议不要超过1小时。 |
| 150 | +
|
| 151 | +支持`configuration`级别全局配置和接口级别的运行时参数设置`RuntimeOption`;`RuntimeOption`设置会覆盖`configuration`全局配置。 |
137 | 152 |
|
| 153 | +**代码示例:** |
| 154 | +```python |
| 155 | +from __future__ import print_function |
| 156 | +import volcenginesdkcore |
| 157 | +import volcenginesdkvpc |
| 158 | +from volcenginesdkcore.rest import ApiException |
| 159 | +from volcenginesdkcore.auth.providers.sts_provider import StsCredentialProvider |
| 160 | + |
| 161 | +if __name__ == '__main__': |
| 162 | + # 注意示例代码安全,代码泄漏会导致AK/SK泄漏,有极大的安全风险。 |
| 163 | + configuration = volcenginesdkcore.Configuration() |
| 164 | + configuration.region = "cn-beijing" |
| 165 | + |
| 166 | + # 这里是使用STS ASSUMEROLE角色的方式 |
| 167 | + configuration.credential_provider = StsCredentialProvider( |
| 168 | + ak="Your ak", |
| 169 | + sk="Your sk", |
| 170 | + role_name="Your role name", |
| 171 | + account_id="Your account id", |
| 172 | + region="cn-beijing" |
| 173 | + ) |
| 174 | + |
| 175 | + # set default configuration |
| 176 | + volcenginesdkcore.Configuration.set_default(configuration) |
| 177 | + # use global default configuration |
| 178 | + api_instance = volcenginesdkvpc.VPCApi() |
| 179 | + create_vpc_request = volcenginesdkvpc.CreateVpcRequest( |
| 180 | + cidr_block="192.168.0.0/16", |
| 181 | + dns_servers=["10.0.0.1", "10.1.1.2"], |
| 182 | + ) |
| 183 | + |
| 184 | + try: |
| 185 | + # 复制代码运行示例,请自行打印API返回值。 |
| 186 | + api_instance.create_vpc(create_vpc_request) |
| 187 | + except ApiException as e: |
| 188 | + # 复制代码运行示例,请自行打印API错误信息。 |
| 189 | + # print("Exception when calling api: %s\n" % e) |
| 190 | + pass |
| 191 | +``` |
| 192 | + |
| 193 | +## STS AssumeRoleWithOidc示例 |
| 194 | + |
| 195 | +STS AssumeRoleOIDC(Security Token Service)是火山引擎提供的临时访问凭证机制。开发者通过oidc_token在服务端调用 STS 接口获取临时凭证(临时 AK、SK 和 Token),有效期可配置,适用于安全要求较高的场景。 |
| 196 | +<br> |
| 197 | +此接口使用oidc身份提供商角色使用oidc_token进行 AssumeRoleWithOidc 操作后,获取到用户的信息后,发起真正的API请求,参考如下 |
| 198 | +<br> |
| 199 | +连接地址:https://www.volcengine.com/docs/6257/1494877 |
| 200 | +> ⚠️ 注意事项 |
| 201 | +> |
| 202 | +> 1. 最小权限: 仅授予调用方访问所需资源的最小权限,避免使用 * 通配符授予全资源、全操作权限。 |
| 203 | +> 2. 设置合理的有效期: 请根据实际情况设置合理有效期,越短越安全,建议不要超过1小时。 |
| 204 | +
|
| 205 | +支持`configuration`级别全局配置和接口级别的运行时参数设置`RuntimeOption`;`RuntimeOption`设置会覆盖`configuration`全局配置。 |
| 206 | + |
| 207 | +**代码示例:** |
| 208 | +```python |
| 209 | +# Example Code generated by Beijing Volcanoengine Technology. |
| 210 | +from __future__ import print_function |
| 211 | +import volcenginesdkcore |
| 212 | +import volcenginesdkvpc |
| 213 | +from volcenginesdkcore.rest import ApiException |
| 214 | +from volcenginesdkcore.auth.providers.sts_oidc_provider import StsOidcCredentialProvider |
| 215 | + |
| 216 | +if __name__ == '__main__': |
| 217 | + # 注意示例代码安全,代码泄漏会导致AK/SK泄漏,有极大的安全风险。 |
| 218 | + configuration = volcenginesdkcore.Configuration() |
| 219 | + configuration.region = "cn-beijing" |
| 220 | + |
| 221 | + # 这里是使用STS ASSUMEROLE_OIDC角色的方式 |
| 222 | + configuration.credential_provider = StsOidcCredentialProvider( |
| 223 | + role_name="your role name", |
| 224 | + account_id="your account id", |
| 225 | + oidc_token="your oidc token", |
| 226 | + region="cn-beijing" |
| 227 | + ) |
| 228 | + |
| 229 | + # set default configuration |
| 230 | + volcenginesdkcore.Configuration.set_default(configuration) |
| 231 | + # use global default configuration |
| 232 | + api_instance = volcenginesdkvpc.VPCApi() |
| 233 | + create_vpc_request = volcenginesdkvpc.CreateVpcRequest( |
| 234 | + cidr_block="192.168.0.0/16", |
| 235 | + dns_servers=["10.0.0.1", "10.1.1.2"], |
| 236 | + ) |
| 237 | + |
| 238 | + try: |
| 239 | + # 复制代码运行示例,请自行打印API返回值。 |
| 240 | + api_instance.create_vpc(create_vpc_request) |
| 241 | + except ApiException as e: |
| 242 | + # 复制代码运行示例,请自行打印API错误信息。 |
| 243 | + # print("Exception when calling api: %s\n" % e) |
| 244 | + pass |
| 245 | + |
| 246 | +``` |
| 247 | + |
| 248 | +## STS AssumeRoleWithSaml示例 |
| 249 | + |
| 250 | +STS AssumeRoleWithSaml(Security Token Service)是火山引擎提供的临时访问凭证机制。开发者通过saml_token在服务端调用 STS 接口获取临时凭证(临时 AK、SK 和 Token),有效期可配置,适用于安全要求较高的场景。 |
| 251 | +<br> |
| 252 | +此接口使用saml身份提供商角色使用saml_resp进行 AssumeRoleWithSaml 操作后,获取到用户的信息后,发起真正的API请求,参考如下 |
| 253 | +<br> |
| 254 | +连接地址:https://www.volcengine.com/docs/6257/1631607 |
| 255 | +> ⚠️ 注意事项 |
| 256 | +> |
| 257 | +> 1. 最小权限: 仅授予调用方访问所需资源的最小权限,避免使用 * 通配符授予全资源、全操作权限。 |
| 258 | +> 2. 设置合理的有效期: 请根据实际情况设置合理有效期,越短越安全,建议不要超过1小时。 |
| 259 | +
|
| 260 | +支持`configuration`级别全局配置和接口级别的运行时参数设置`RuntimeOption`;`RuntimeOption`设置会覆盖`configuration`全局配置。 |
| 261 | + |
| 262 | +**代码示例:** |
| 263 | +```python |
| 264 | +# Example Code generated by Beijing Volcanoengine Technology. |
| 265 | +from __future__ import print_function |
| 266 | +import volcenginesdkcore |
| 267 | +import volcenginesdkvpc |
| 268 | +from volcenginesdkcore.rest import ApiException |
| 269 | +from volcenginesdkcore.auth.providers.sts_saml_provider import StsSamlCredentialProvider |
| 270 | + |
| 271 | +if __name__ == '__main__': |
| 272 | + # 注意示例代码安全,代码泄漏会导致AK/SK泄漏,有极大的安全风险。 |
| 273 | + configuration = volcenginesdkcore.Configuration() |
| 274 | + configuration.region = "cn-beijing" |
| 275 | + |
| 276 | + # 这里是使用STS ASSUMEROLE_SAML角色的方式 |
| 277 | + configuration.credential_provider = StsSamlCredentialProvider( |
| 278 | + role_name="your role name", |
| 279 | + provider_name="your provider name", |
| 280 | + account_id="your account id", |
| 281 | + saml_resp="your saml resp", |
| 282 | + region="cn-beijing" |
| 283 | + ) |
| 284 | + |
| 285 | + # set default configuration |
| 286 | + volcenginesdkcore.Configuration.set_default(configuration) |
| 287 | + # use global default configuration |
| 288 | + api_instance = volcenginesdkvpc.VPCApi() |
| 289 | + create_vpc_request = volcenginesdkvpc.CreateVpcRequest( |
| 290 | + cidr_block="192.168.0.0/16", |
| 291 | + dns_servers=["10.0.0.1", "10.1.1.2"], |
| 292 | + ) |
| 293 | + |
| 294 | + try: |
| 295 | + # 复制代码运行示例,请自行打印API返回值。 |
| 296 | + api_instance.create_vpc(create_vpc_request) |
| 297 | + except ApiException as e: |
| 298 | + # 复制代码运行示例,请自行打印API错误信息。 |
| 299 | + # print("Exception when calling api: %s\n" % e) |
| 300 | + pass |
| 301 | + |
| 302 | +``` |
138 | 303 |
|
139 | 304 | # EndPoint配置 |
140 | 305 |
|
|
0 commit comments