承接 wlfpanda1012/aliyun-sts 相关项目开发

从需求分析到上线部署,全程专人跟进,保证项目质量与交付效率

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

wlfpanda1012/aliyun-sts

Composer 安装命令:

composer require wlfpanda1012/aliyun-sts

包简介

Hyperf encapsulated using the latest version of the SDK for STS in the Alibaba Cloud openapi series interfaces with composer package.

关键字:

README 文档

README

Php Version Swoole Version

介绍

Hyperf 框架编写的基于阿里云openapi系列 sts 接口的最新版本SDK的封装包 并对 OSS 服务进行了优化封装

安装

composer require wlfpanda1012/aliyun-sts

发布配置

 php bin/hyperf.php vendor:publish wlfpanda1012/aliyun-sts

如何使用

  • 填写 STS_ACCESS_KEY_ID STS_ACCESS_KEY_SECRET STS_ROLE_ARN.env

如果你想用原生 STS 功能

<?php

declare(strict_types=1);
/**
 * This file is part of Hyperf.
 *
 * @link     https://www.hyperf.io
 * @document https://hyperf.wiki
 * @contact  group@hyperf.io
 * @license  https://github.com/hyperf/hyperf/blob/master/LICENSE
 */
use Wlfpanda1012\AliyunSts\StsService;

$effect = 'Allow';
$action = ['*'];
$resource = ['*'];
$condition = null;
$roleSessionName = 'session_name';
$service = \Hyperf\Support\make(StsService::class, ['option' => \Hyperf\Config\config('sts')]);
// 具体Statement参数请查询阿里云官方文档
$assumeRoleRequest = $service->generateAssumeRoleRequest($service->generatePolicy($service->generateStatement($effect, $action, $resource, $condition)), $roleSessionName);
$credentials = $service->getCredentials($service->assumeRole($assumeRoleRequest));

如果想用封装好的 OSS-STS 功能你只需要

  • 为了简化操作以及降低用户的心智负担,建议只传入 path
  • 如果你对权限时间有要求,可以传入时间 默认 time = 3600
  • 下载和上传默认使用了通配符的形式.
  • 如果你需要更多个性化的Action,提供了 OSSAction 供你直观的选择.
  • (如果枚举类中没有你想要的类型欢迎提 PR 当然也可以直接用通配符降低负担.)
<?php

declare(strict_types=1);
/**
 * This file is part of Hyperf.
 *
 * @link     https://www.hyperf.io
 * @document https://hyperf.wiki
 * @contact  group@hyperf.io
 * @license  https://github.com/hyperf/hyperf/blob/master/LICENSE
 */
use Wlfpanda1012\AliyunSts\Constants\OSSAction;
use Wlfpanda1012\AliyunSts\Oss\OssRamService;

$service = \Hyperf\Support\make(OssRamService::class, ['option' => \Hyperf\Config\config('sts')]);

/**
 * 如果你想获得下载文件的token,可以使用以下代码
 * 支持数组和字符串.
 */
$token = $service->allowGetObject('path/to/file');
$token = $service->allowGetObject('path/to/file', 3600);
$token = $service->allowGetObject(['path/to/file1', 'path/to/file2'], 3600);
/**
 * 如果你不想使用通配行为.
 */
$token = $service->allowGetObject(['path/to/file1', 'path/to/file2'], 3600, ['actions' => OSSAction::GET_OBJECT]);
$token = $service->allowGetObject(['path/to/file1', 'path/to/file2'], 3600, ['actions' => [OSSAction::GET_OBJECT, OSSAction::GET_OBJECT_ACL]]);

/**
 * allowPutObject
 * denyPutObject
 * denyGetObject
 * 功能同上.
 */

wlfpanda1012/aliyun-sts 适用场景与选型建议

wlfpanda1012/aliyun-sts 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 115 次下载、GitHub Stars 达 4, 最近一次更新时间为 2024 年 08 月 20 日, 在 PHP 生态内属于活跃度较高的组件。

它主要适用于以下技术方向: 「php」 「hyperf」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。

我们在过去多个企业项目中使用过 wlfpanda1012/aliyun-sts 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。

围绕 wlfpanda1012/aliyun-sts 我们能提供哪些服务?
定制开发 / 二次开发

基于 wlfpanda1012/aliyun-sts 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。

BUG 修复 & 性能优化

线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。

项目外包 & 长期维护

承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。

yvsm@zunyunkeji.com QQ:316430983 微信:yvsm316 西安尊云信息科技 · 专注 PHP / Go / 分布式系统研发

统计信息

  • 总下载量: 115
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 5
  • 点击次数: 14
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 4
  • Watchers: 1
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2024-08-20