88 lines
3.3 KiB
C#
Raw Normal View History

2025-06-06 16:00:39 +08:00
//using Aliyun.Acs.Core;
//using Aliyun.Acs.Core.Auth.Sts;
//using Aliyun.Acs.Core.Exceptions;
//using Aliyun.Acs.Core.Profile;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using VOL.Core.CacheManager;
using VOL.Core.Filters;
using VOL.Core.Services;
using VOL.Core.Utilities;
namespace VOL.WebApi.Controllers.OSS
{
/// <summary>
/// neuget包aliyun-net-sdk-core
/// </summary>
[JWTAuthorize, ApiController]
[Route("api/alioss")]
public class AliOSSController : Controller
{
private ICacheService _cache { get; set; }
public AliOSSController(ICacheService cache)
{
_cache = cache;
}
[Route("getAccessToken"), HttpGet]
public object GetAccessToken()
{
// //Region对照(创建创建 Bucket时选择的地域)https://oss.console.aliyun.com/bucket列表中的【地域】列根据地域在下面的链接里面【Region ID】值
// //https://help.aliyun.com/document_detail/31837.htm?spm=a2c4g.11186623.0.0.57a8396cwRnyQV#section-plb-2vy-5db
// string region = "oss-cn-beijing";
////https://ram.console.aliyun.com/users 用户点击进去里面找
// string accessKeyID = "LTAI5tR4bQnBZqF8ruGiw123";
// string accessKeySecret = "gZUwXdy1mVsPvROfNCsvmVWOeqi123";
//// https://ram.console.aliyun.com/roles/AliyunServiceRoleForSLSAudit 角色点进去找ARN
// string ARN = "acs:ram::1807122303681234:role/vol-role";
// WebResponseContent webResponse = new WebResponseContent();
// //下面这些引用的neuget包aliyun-net-sdk-core
// //获取sts凭证
// IClientProfile profile = DefaultProfile.GetProfile(region, accessKeyID, accessKeySecret);
// DefaultAcsClient client = new DefaultAcsClient(profile);
// var request = new AssumeRoleRequest()
// {
// RoleArn = ARN,
// //这个 随便填写
// RoleSessionName = "oss"
// };
// try
// {
// var response = client.GetAcsResponse(request);
// return Json(webResponse.OK(null, new
// {
// region,
// response.Credentials.AccessKeyId,
// response.Credentials.AccessKeySecret,
// response.Credentials.SecurityToken,
// Bucket= "vol-2023",//阿里云控制台创建的bucket名称
// //Bucket所在具体文件夹
// BucketFolder = "/" + DateTime.Now.ToString("yyyyMMdd"),
// //生成一个唯一标识防止文件重复
// unique = DateTime.Now.ToString("HHmmsss")
// }));
// }
// catch (ServerException e)
// {
// string message = $"获取sts异常{e.Message + e.StackTrace}";
// Console.WriteLine(message);
// Logger.Error(message);
// return Json(webResponse.Error(message));
// }
return Content("");
}
}
}