返回列表 发新帖

aksk 根据时间窗口签名_创建aksk

[复制链接]

6

主题

6

帖子

6

积分

新手上路

Rank: 1

积分
6
发表于 2024-10-5 09:42:03  | 显示全部楼层 | 阅读模式
根据给定的时间窗口,创建AKSK(Access Key,Secret Key,Security Token)签名。AKSK是一种用于身份验证和访问控制的密钥对,包括访问密钥、秘密密钥和安全令牌。
根据时间窗口签名创建AKSK的过程可以分为以下几个步骤:

zbhjvb51nitjtqo.jpg

zbhjvb51nitjtqo.jpg


(图片来源网络,侵删)
1、准备环境
   确保已经安装了Azure CLI(命令行界面工具)。
   登录到Azure账户。
2、获取订阅ID和租户ID
   运行以下命令获取订阅ID和租户ID:
     “`
     az account show query "{subscriptionId:id, tenantId:tenantId}"

zbhji0x2151kjal.jpg

zbhji0x2151kjal.jpg


(图片来源网络,侵删)
     “`
3、创建证书颁发机构(CA)
   运行以下命令创建CA:
     “`
     az keyvault certificate create name myCertificateAuthority vaultname myKeyVault resourcegroup myResourceGroup duration P1Y exportable false
     “`
     myCertificateAuthority是CA的名称,myKeyVault是密钥保管库的名称,myResourceGroup是资源组的名称,P1Y表示有效期为1年。

zbhjsl1dqferoct.jpg

zbhjsl1dqferoct.jpg


(图片来源网络,侵删)
4、创建客户端证书
   运行以下命令创建客户端证书:
     “`
     az keyvault certificate create name myClientCertificate vaultname myKeyVault resourcegroup myResourceGroup certificatepolicy "{"issuerName": "Self", "subjectName": "myClientCertificate", "validityInMonths": 12}"
     “`
     myClientCertificate是客户端证书的名称,myKeyVault是密钥保管库的名称,myResourceGroup是资源组的名称,validityInMonths表示证书的有效期(以月为单位)。
5、导出客户端证书
   运行以下命令导出客户端证书:
     “`
     az keyvault certificate download file myClientCertificate.pfx vaultname myKeyVault name myClientCertificate resourcegroup myResourceGroup
     “`
     myClientCertificate.pfx是导出的证书文件名,myKeyVault是密钥保管库的名称,myClientCertificate是客户端证书的名称,myResourceGroup是资源组的名称。
6、安装客户端证书
   根据操作系统的不同,安装客户端证书的方法也有所不同,以下是在Windows上安装客户端证书的示例:
     1. 双击下载的myClientCertificate.pfx文件。
     2. 在弹出的证书导入向导中,选择“本地计算机”作为存储位置,并输入一个密码来保护证书。
     3. 完成安装后,将客户端证书添加到受信任的根证书颁发机构列表中。
7、使用客户端证书进行身份验证
   现在可以使用客户端证书进行身份验证了,可以使用以下命令从Azure存储帐户下载一个文件:
     “`
     az storage blob download containername myContainer filepath myFile accountname myAccount accountkey myAccountKey sastoken https://myAccount.blob.core.windows.net/myContainer/myFile?se=20220101T00:00Z&sp=rl&sv=2&sr=c&si=myPolicy&sig=mySignature connectionstring "DefaultEndpointsProtocol=https;AccountName=myAccount;AccountKey=myAccountKey;EndpointSuffix=core.windows.net"
     “`
     myContainer是容器名称,myFile是要下载的文件名,myAccount是存储帐户名称,myAccountKey是存储帐户密钥,https://myAccount.blob.core.windows.net/myContainer/myFile?se=20220101T00:00Z&sp=rl&sv=2&sr=c&si=myPolicy&sig=mySignature是带有时间窗口签名的SAS令牌。

下面是一个关于创建基于时间窗口签名的AKSK(Access Key 和 Secret Key)的介绍,这个介绍列出了创建过程中涉及的关键参数和说明。
参数/字段 说明
Access Key (AK) 访问密钥,用于标识用户身份,通常由系统自动生成,用户需要妥善保管。
Secret Key (SK) 密钥,用于签名,生成请求的合法性校验,同样需要妥善保管。
时间窗口 允许签名的有效时间范围,通常以分钟为单位。
签名算法 生成签名的算法,如HMACSHA256等。
用户ID 用户的唯一标识符,用于与AKSK关联。
创建时间 AKSK创建的时间,通常作为签名的起始时间。
有效期 AKSK的有效期限,超过有效期后AKSK将不可用。
操作权限 指定AK所具有的操作权限,如读、写、管理等。

以下是创建AKSK的具体介绍:
用户ID Access Key (AK) Secret Key (SK) 时间窗口(分钟) 签名算法 创建时间 有效期 操作权限
10001 1234567890abcdef12345678 zyxwvutsrqponmlkjhgfedcba 30 HMACSHA256 20231108 10:00:00 1年 读、写

请注意,上述介绍中的示例信息是虚构的,实际使用时请确保遵循相关的安全规范和要求,妥善保管AKSK,防止泄露,以确保系统安全。
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表