本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
在应用程序中访问凭据和配置文
使用凭证的首选方法是允许Amazon SDK for .NET为你查找和检索它们,如中所述凭证和配置文件解析.
但是,您还可以将应用程序配置为主动检索配置文件和凭证,然后在创建Amazon服务客户端。
要主动检索配置文件和凭证,请使用Amazon.runtime.凭证管理命名空间。
-
在文件中查找使用Amazon凭据文件格式(或者共享的Amazon凭据文件位于默认位置或自定义凭证文件),请使用SharedCredentialsFile类 这种格式的文件有时被简单地称为凭证文件为了简洁起见,在这篇文本中。
-
要在 SDK Store 中查找配置文件,请使用NetSDKCredentialsFile类
-
要在凭证文件和 SDK Store 中搜索,具体取决于类属性的配置,请使用凭据配置文件商店链类
您可以使用此类查找配置文件。您还可以使用此类Amazon直接凭据而不是使用
AWSCredentialsFactory
类(下面介绍)。 -
要从配置文件中检索或创建各种类型的凭据,请使用AWScreentialsS 工厂类
以下部分提供了这些类的示例。
类凭据配置文件 Store Chain 的示例
您可以从凭据配置文件商店链通过使用TryGetAWSCredentials要么TryGetProfile方法。这些区域有:ProfilesLocation
类的属性将决定方法的行为,如下所示:
-
如果
ProfilesLocation
为空或空,如果平台支持 SDK Store,请搜索该应用商店,然后搜索共享Amazon凭据文件位于默认位置。 -
如果
ProfilesLocation
属性包含一个值,请搜索属性中指定的凭证文件。
从 SDK Store 或共享的获取凭据Amazon凭证文件
此示例向您演示如何使用获取凭证如何使用CredentialProfileStoreChain
类,然后使用凭证创建卓越亚马逊 3 客户端对象。凭据可以来自 SDK Store,也可以来自共享Amazon凭据文件位于默认位置。
此示例还使用了Amazon.runtime.awClient 凭据类
var chain = new CredentialProfileStoreChain(); AWSCredentials awsCredentials; if (chain.TryGetAWSCredentials("some_profile", out awsCredentials)) { // Use awsCredentials to create an Amazon S3 service client using (var client = new AmazonS3Client(awsCredentials)) { var response = await client.ListBucketsAsync(); Console.WriteLine($"Number of buckets: {response.Buckets.Count}"); } }
从 SDK Store 或共享版本中获取个人资料Amazon凭证文件
此示例说明如何使用 CredentialProfile 类获取配置文件。凭据可以来自 SDK Store,也可以来自共享Amazon凭据文件位于默认位置。
此示例还使用了凭据配置文件类
var chain = new CredentialProfileStoreChain(); CredentialProfile basicProfile; if (chain.TryGetProfile("basic_profile", out basicProfile)) { // Use basicProfile }
从自定义凭证文件中获取凭据
此示例说明如何使用 CredentialProfile 类获取凭证。凭据来自使用Amazon凭据文件格式但位于备用位置。
此示例还使用了Amazon.runtime.awClient 凭据类
var chain = new CredentialProfileStoreChain("c:\\Users\\sdkuser\\customCredentialsFile.ini"); AWSCredentials awsCredentials; if (chain.TryGetAWSCredentials("basic_profile", out awsCredentials)) { // Use awsCredentials to create an AWS service client }
课程共享证书的示例文件和 Amazon 凭证证书工厂
使用 SharedCredentialsFile 类创建 Amazon 3 客户端
此示例向您演示如何在共享的配置文件。Amazon凭证文件,创建Amazon来自配置文件的凭据,然后使用凭据创建卓越亚马逊 3 客户端对象。此示例使用SharedCredentialsFile类
此示例还使用了凭据配置文件类Amazon.runtime.awClient 凭据类
CredentialProfile basicProfile; AWSCredentials awsCredentials; var sharedFile = new SharedCredentialsFile(); if (sharedFile.TryGetProfile("basic_profile", out basicProfile) && AWSCredentialsFactory.TryGetAWSCredentials(basicProfile, sharedFile, out awsCredentials)) { // use awsCredentials to create an Amazon S3 service client using (var client = new AmazonS3Client(awsCredentials, basicProfile.Region)) { var response = await client.ListBucketsAsync(); Console.WriteLine($"Number of buckets: {response.Buckets.Count}"); } }
这些区域有:NetSDKCredentialsFile类可以用完全相同的方式使用,除非您将实例化一个新的 NetSDKCredentialsFile 对象而不是一个 SharedCredentialsFile 对象。