介绍
在前端开发中,经常需要进行登录认证、权限管理等操作。为了方便实现这些功能,微软提供了一个 @azure/core-auth 的 npm 包,可以帮助我们简化认证过程,让我们专注于业务逻辑的开发。
在本文中,我们将介绍如何使用 @azure/core-auth 包来实现认证功能,并提供示例代码供参考。
安装
我们可以使用 npm 包管理器来安装 @azure/core-auth 包。打开终端,执行以下命令即可:
--- ------- ----------------
使用
导入包
在引入 @azure/core-auth 包之前,我们需要先导入 require() 方法。我们还需要导入其他一些包,包括:
- identity
- DefaultAzureCredential
以下是导入包的代码:
----- - ---------------------- - - --------------------------- ----- - ---------------------- - - ----------------------------
获取凭据
接下来,我们需要获取一个凭据。凭据是用来证明我们的身份的,可以是一个 Azure AD 应用程序凭据,也可以是运行环境中的其他凭据,诸如用户凭据、服务主体凭据等。
我们可以使用 DefaultAzureCredential
类来获取一个默认的凭据。这个凭据会基于运行代码的环境,尝试获取相应的凭据。例如,如果我们在 Azure 主机上运行代码,则会尝试使用主机身份验证凭据(如果启用了)或使用 Azure Managed Identity 等。
以下是获取凭据的代码:
----- ---------- - --- ------------------------- ----- ------- - - ------- ------------------------------------ --
这里,我们获取了一个默认的凭据,并指定了要使用的作用域。在这个例子中,我们使用 Azure Key Vault。如果您使用其他 Azure 服务,则必须更改作用域。
链式凭据
在某些情况下,我们可能需要使用多个凭据。在这种情况下,我们可以使用 ChainedTokenCredential
类来创建一个链式凭据。
以下是使用链式凭据的代码:
----- ----------- - --- --------------------- ----- ----------- - --- ---------------------------- ----- ----------- - --- ------------------------- ----- ------- - - ------- ------------------------------------ -- ----- --------------- - --- ----------------------------------- ------------ -------------
这里,我们创建了三个凭据:一个 Azure CLI 凭据、一个 Azure Managed Identity 凭据和一个默认的凭据。我们还指定了要使用的作用域。最后,我们使用这些凭据创建了一个链式凭据。
配置选项
在创建凭据之后,我们需要为我们的连接配置一些选项,例如连接字符串、代理服务器等。
以下是配置选项的代码:
----- ------- - - ------------- - ----- -------------------- ----- ---- -- ------------- - ----------- ----- ----------- - - --
这里,我们指定了代理服务器和重试选项。其他选项还包括 transportOptions
、loggingOptions
、retryOptions
等。
创建客户端
在配置选项之后,我们可以使用 ChainedTokenCredential
和选项来创建客户端。在这个例子中,我们将创建一个 Azure Key Vault 客户端。
以下是创建客户端的代码:
----- - ------------ - - ----------------------------------- ----- ------ - --- ----------------------------------------------- ---------------- ---------
这里,我们创建了一个 SecretClient
客户端,并指定了 Key Vault 的 URL、凭据链和选项。
使用客户端
现在,我们可以使用客户端来访问 Key Vault 的密钥、证书和机密。以下是一些示例代码:
-- ------ ----- ---- - ----- --------------------------------- ------------------ -- ---- ----- --- - ----- -------------------------- ----------------- -- ---- ----- ------ - ----- ------------------------- ------- -------- -------------------- -- ---- ----- ---------- - ----- ----------------------------- ------------------------
在这里,我们使用 listPropertiesOfSecrets()
方法获取密钥列表,使用 getSecret()
方法获取密钥,使用 setSecret()
方法创建密钥,使用 deleteSecret()
方法删除密钥。
总结
在本文中,我们介绍了如何使用 @azure/core-auth 包来实现认证功能,包括导入包、获取凭据、使用链式凭据、配置选项、创建客户端和使用客户端。此外,我们还提供了示例代码以供参考。
@azure/core-auth 包为开发人员提供了一种方便实现认证功能的方式,使我们能够专注于业务逻辑的开发。如果您正在开发前端应用程序,并需要进行认证操作,请使用 @azure/core-auth 包来实现您的功能。
来源:JavaScript中文网 ,转载请联系管理员! 本文地址:https://www.javascriptcn.com/post/5eedac52b5cbfe1ea06109cc