1、关于访问令牌
在使用API或npm命令行界面(CLI)时,访问令牌是使用用户名和密码向npm进行身份验证的替代方案。 访问令牌是一个十六进制字符串,您可以使用它来进行身份验证,它赋予您安装和/或发布模块的权利。
有两种类型的访问令牌可用:
- 传统令牌
- 粒度访问令牌
您可以创建访问令牌,以给予其他工具(如持续集成测试环境)能够访问您的npm包。例如,GitHub Actions提供了存储密钥的能力,例如访问令牌,然后您可以使用这些秘密来进行身份验证。 当您的工作流运行时,它将能够像您一样完成npm任务,包括安装您可以访问的私有包。
您可以使用Web或CLI中的令牌,以最简单的方式使用。你在每个环境中所做的事情都会反映在另一个环境中。
令牌命令允许您:
1.1 关于传统令牌
传统令牌是以与创建它们的用户相同的权限创建的。运行npm login
时,npm CLI会自动生成并使用发布令牌。
- 只读:您可以使用这些令牌从注册表下载包。这些令牌最适合安装软件包的自动化和工作流。为了提高安全性,我们建议使用粒度访问令牌。
- 自动化:您可以使用这些令牌下载软件包并安装新软件包。这些令牌最适合发布新包的自动化工作流。自动化令牌不适用于在npm上执行操作,并且适用于CI/CD工作流。为了提高安全性,我们建议使用粒度访问令牌。
- 发布:您可以使用这些令牌下载软件包、安装软件包以及更新用户和软件包设置。我们建议将它们用于交互式工作流,如CLI。如果在您的帐户上启用了2FA,发布令牌将需要2FA才能在npm上执行敏感操作。
1.2 关于粒度访问令牌
细粒度访问令牌允许您根据要使用令牌的用途限制对令牌的访问。使用粒度访问令牌,您可以:
您可以在npm帐户上创建多达1000个粒度访问令牌。您可以设置令牌的有效期,至少在未来一天内。每个令牌最多可以访问50个组织,最多可以访问50个包、50个作用域或50个包和作用域的组合。访问令牌与用户的权限绑定;因此,它在任何时间点都不能具有比用户更多的许可。如果用户从包或组织撤销了其访问权限,它们的粒度访问令牌也将使其访问从那些包或org中被撤销。
当您给予对组织的令牌访问权限时,令牌只能用于管理组织设置以及与该组织关联的团队或用户。它不给予令牌发布组织管理的包的权利。
2、创建和查看访问令牌
2.1 创建访问令牌
在网站上创建传统令牌
1、在页面的右上角,单击您的个人资料图片,然后单击访问令牌。
2、可以看到最近的访问令牌列表,上面2个按钮,可以用来创建新的令牌,以及删除列表中的令牌,如下所示:
令牌有2中,颗粒度访问令牌,以及经典令牌
3、选择一种类型进行令牌的创建,这里先选择经典令牌的创建,需要输入确认密码才能继续。
访问令牌的类型:
- 只读:只读令牌只能用于从注册表下载包。 它将有权限读取您有权访问的任何私有包。 对于正在安装软件包但不发布新软件包的自动化和工作流,建议使用此方法。
- 自动化:自动化令牌可以下载包并发布新包,但如果您在帐户上配置了双因素身份验证(2FA),则不会强制执行。 您可以在持续集成工作流和其他自动化系统中使用自动化令牌来发布包,即使您无法输入一次性密码。
- 发布:发布令牌可以代表您执行任何操作,包括下载包、发布包以及更改用户设置或包设置。 如果您的帐户上配置了双因素身份验证,则在使用发布令牌时,您将需要输入一次性密码。 对于CLI等交互式工作流,建议使用此方法。
5、然后单击左下角的“生成令牌”按钮,生成一个新的访问令牌。
6、令牌生成之后,回访令牌列表页面,在列表上面可以看到新生成的令牌。
在网站上创建粒度访问令牌
1、在页面的右上角,单击您的个人资料图片,然后单击访问令牌。
2、可以看到最近的访问令牌列表,上面2个按钮,可以用来创建新的令牌,以及删除列表中的令牌,如下所示:
令牌有2中,颗粒度访问令牌,以及经典令牌
3、选择一种类型进行令牌的创建,这里先选择粒度访问令牌的创建,需要输入确认密码才能继续。
(3)到期时间,选择令牌到期的时间(默认选择3天)。也可以选择其他的,也已选自定义。
(4)在“允许的IP范围”字段中,输入要限制访问令牌的IP地址范围。必须使用CIDR表示法输入IP地址范围。要添加多个允许的IP范围,请单击“添加IP范围”,然后在新文本字段中输入IP范围。
(5)包以及作用域权限(默认禁止访问)
包括3种权限:
- 禁止访问
- 只读
- 可读写
(5)组织的访问权限(默认禁止访问)
包括3种权限:
- 禁止访问
- 只读
- 可读写
根据摘要信息确认无误后,然后单击左下角“生成令牌”,生成粒度访问令牌。
5、令牌生成之后,回访令牌列表页面,在列表上面可以看到新生成的令牌。
使用CLI创建令牌
此外,您可以使用CIDR表示法指定令牌仅对特定的IPv4地址范围有效。 令牌仅在从指定的IP地址使用时有效。
- npm token create 用于创建只读和发布令牌
- npm token create —read–only 用于创建只读令牌
- npm token create —cidr=[list] 用于CIDR限制的读取和发布令牌。例如
npm token create --cidr=192.0.2.0/24
npm token create --read-only --cidr=[list]
用于CIDR限制的只读令牌
2、出现提示时,输入密码。
3、如果已启用双因素身份验证
,则在出现提示时输入一次性密码。
CIDR限制令牌错误
如果您输入的CIDR字符串无效或格式不正确,您将收到类似于下面的错误:
查看访问令牌
在网站上查看令牌
在CLI上查看令牌
令牌属性
- id:使用令牌ID来引用命令中的令牌。
- token:第一个数字是实际token。
- create:创建令牌的日期。
- readonly:如果是,则表示只读标记。如果为否,则指示同时具有读取和发布权限的令牌。
- CIDR白名单:按IP地址限制令牌使用。
原文地址:https://blog.csdn.net/u014388408/article/details/132213156
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.7code.cn/show_19001.html
如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱:suwngjj01@126.com进行投诉反馈,一经查实,立即删除!