DefaultCredentials.cs 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. /*
  2. * Copyright (C) Alibaba Cloud Computing
  3. * All rights reserved.
  4. *
  5. * 版权所有 (C)阿里云计算有限公司
  6. */
  7. using Aliyun.OSS.Common.Authentication;
  8. using Aliyun.OSS.Util;
  9. namespace Aliyun.OSS.Common.Authentication
  10. {
  11. /// <summary>
  12. /// 默认鉴权类
  13. /// </summary>
  14. public class DefaultCredentials : ICredentials
  15. {
  16. /// <inheritdoc/>
  17. public string AccessKeyId { get; private set; }
  18. /// <inheritdoc/>
  19. public string AccessKeySecret { get; private set; }
  20. /// <inheritdoc/>
  21. public string SecurityToken { get; private set; }
  22. /// <inheritdoc/>
  23. public bool UseToken { get { return !string.IsNullOrEmpty(SecurityToken); } }
  24. /// <summary>
  25. /// 构造一个<see cref="DefaultCredentials"/>的实例
  26. /// </summary>
  27. /// <param name="accessKeyId">OSS的访问ID</param>
  28. /// <param name="accessKeySecret">OSS的访问密钥</param>
  29. /// <param name="securityToken">STS提供的安全令牌</param>
  30. public DefaultCredentials(string accessKeyId, string accessKeySecret, string securityToken)
  31. {
  32. OssUtils.CheckCredentials(accessKeyId, accessKeySecret);
  33. AccessKeyId = accessKeyId.Trim();
  34. AccessKeySecret = accessKeySecret.Trim();
  35. SecurityToken = securityToken ?? string.Empty;
  36. }
  37. }
  38. }