
# 初始化option(C SDK)
![](https://support.huaweicloud.com/sdk-c-devg-obs/public_sys-resources/notice_3.0-zh-cn.png)
开发过程中，您有任何问题可以在GitHub上[提交issue](https://github.com/huaweicloud/huaweicloud-sdk-c-obs/issues)，或者在[华为云对象存储服务论坛](https://bbs.huaweicloud.com/forum/forum-620-1.html)中发帖求助。
在调用C SDK的功能函数时，都要传入option参数，您可通过init_obs_options函数初始化option配置，通过option设置AK、SK、Endpoint、bucket、超时时间、临时鉴权：
- 永久访问密钥（AK/SK）创建并初始化option如下：
  ```
  // 创建并初始化option
  obs_options options;
  init_obs_options(&options);
  // host_name填写桶所在的endpoint, 此处以华北-北京四为例，其他地区请按实际情况填写。
  options.bucket_options.host_name = "obs.cn-north-4.myhuaweicloud.com";
  options.bucket_options.bucket_name = "<Your bucketname>";
  // 认证用的ak和sk硬编码到代码中或者明文存储都有很大的安全风险，建议在配置文件或者环境变量中密文存放，使用时解密，确保安全；本示例以ak和sk保存在环境变量中为例，运行本示例前请先在本地环境中设置环境变量ACCESS_KEY_ID和SECRET_ACCESS_KEY。
  // 您可以登录访问管理控制台获取访问密钥AK/SK，获取方式请参见https://support.huaweicloud.com/usermanual-ca/ca_01_0003.html
  options.bucket_options.access_key = getenv("ACCESS_KEY_ID");
  options.bucket_options.secret_access_key = getenv("SECRET_ACCESS_KEY");
  ```
  
- 临时访问密钥（AK/SK和SecurityToken）创建并初始化option如下：
  ```
  // 创建并初始化option
  obs_options options;
  init_obs_options(&options);
  // host_name填写桶所在的endpoint, 此处以华北-北京四为例，其他地区请按实际情况填写。
  options.bucket_options.host_name = "obs.cn-north-4.myhuaweicloud.com";
  options.bucket_options.bucket_name = "<Your bucketname>";
  // 认证用的ak和sk硬编码到代码中或者明文存储都有很大的安全风险，建议在配置文件或者环境变量中密文存放，使用时解密，确保安全；本示例以ak和sk保存在环境变量中为例，运行本示例前请先在本地环境中设置环境变量ACCESS_KEY_ID和SECRET_ACCESS_KEY。
  // 您可以登录访问管理控制台获取访问密钥AK/SK，获取方式请参见https://support.huaweicloud.com/usermanual-ca/ca_01_0003.html
  options.bucket_options.access_key = getenv("ACCESS_KEY_ID");
  options.bucket_options.secret_access_key = getenv("SECRET_ACCESS_KEY");
  options.bucket_options.token = getenv("SecurityToken");
  ```
  ![](https://support.huaweicloud.com/sdk-c-devg-obs/public_sys-resources/note_3.0-zh-cn.png)
  - OBS属于全局级服务，所以在获取临时访问密钥时，需要设置Token的使用范围取值为domain，表示获取的Token可以作用于全局服务，全局服务不区分项目或者区域。
    
 
