阿里云oss上传图片stsToken获得教程

2020-04-30 16:53:22

阿里云这个权限系统,真的很难用啊。。。。

阿里云oss stsToken配置


  1. 打开地址  https://ram.console.aliyun.com/roles

  2. 创建用户来获取 accessKeyId accessKeySecret

  3. RAM角色管理,创建RAM角色,记得创建的时候选择阿里云

  4. 给角色添加权限,根据自己需求,可以添加无数个,最重要的是添加AliyunSTSAssumeRoleAccess,可以搜索添加。



nodejs后台接口代码如下

app.all('/aliTokenXiaolingyi',async (req, res) => {

  /**参考地址
  * https://help.aliyun.com/document_detail/32077.html?spm=a2c4g.11186623.2.7.2ab259d4e6YINH#section-zkq-3rq-dhb*/
  let STS = OSS.STS;
  let sts = new STS({
    accessKeyId: 'LTAI4G***jy',
    accessKeySecret: 'lr36B****12998fn88h'
  });
  
//RAM 配置
  /**
   * https://helpcdn.aliyun.com/knowledge_detail/58905.html
   */
  let token = await sts.assumeRole(
    'acs:ram::1541182****0825:role/demo-2-role', null, '3600', 'demo-bucket');
  return res.status(200).json(token)
})


前端接口解析如下

   async  getXiaolingyi2(){
        const   token = await this.$axiosGet("/api/aliToken")
        if(token){
          this.client = new OSS({
            region: 'oss-cn-beijing',
            //云账号AccessKey有所有API访问权限,建议遵循阿里云安全最佳实践,创建并使用STS方式来进行API访问
            /*搜索RAM进行添加用户就能看到下面的了*/
            accessKeyId: token.credentials.AccessKeyId,
            accessKeySecret: token.credentials.AccessKeySecret,
            stsToken: token.credentials.SecurityToken,
            bucket: 'demo-bucket'
          });
        }
      },


真的不想再用阿里云的服务文档啦。。

  • 2021-01-22 08:30:02

    Android IO简化之Okio库

    如果之前有使用过Okhttp,那么你一定知道底层的IO读取是由square公司开发的Okio库。它补充了Java.io和java.nio的不足,以便能够更加方便,快速的访问、存储和处理你的数据。而在一般的开发中,我们也可以使用Okio来做IO读写,非常方便深得我心

  • 2021-01-22 21:56:48

    emcc生成wasm,wast,bc文件的方法

    Emscripten实现把C/C++文件转成wasm,wast(wasm的可读形式),llvm字节码(bc格式),ll格式(llvm字节码的可读形式)的步骤。

  • 2021-01-22 21:59:34

    emcc编译与部分重要参数选取

    C/C++代码通过emcc编译为字节码,然后根据不同的目标编译为asm.js或wasm。emcc和gcc编译选项类似,例如-s OPTIONS=VALUE、-O等。另外为了适应Web环境,emcc增加了一些特有的选项,如–pre-js 、–post-js 等。

  • 2021-01-22 22:01:19

    Emscripten Compiler Frontend (emcc)

    The Emscripten Compiler Frontend (emcc) is used to call the Emscripten compiler from the command line. It is effectively a drop-in replacement for a standard compiler like gcc or clang.

  • 2021-01-22 22:21:41

    emcc编译命令介绍

    这个输入文件file,既可以是clang可以编译的C/C++语言,也可以是二进制形式的llvm bitcode或者人类可读形式的llvm assembly文件。

  • 2021-01-22 22:25:51

    How to protect your JS code by WebAssembly

    对于iOS或是Android来说,我们可以将相关的算法通过C/C++进行编写,然后编译为dylib或是so并进行混淆以此来增加破解的复杂度,但是对于前端来说,并没有类似的技术可以使用。当然,自从asm.js及WebAssembly的全面推进后,我们可以使用其进一步增强我们核心代码的安全性,但由于asm.js以及WebAssembly标准的开放,其安全强度也并非想象中的那么美好。