Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk Menggunakan AWS SDK Versi 2 dengan Bukti Kelayakan Dinamik dalam Go?

Bagaimana untuk Menggunakan AWS SDK Versi 2 dengan Bukti Kelayakan Dinamik dalam Go?

Linda Hamilton
Linda Hamiltonasal
2024-11-01 13:33:29564semak imbas

How to Use AWS SDK Version 2 with Dynamic Credentials in Go?

Mengakses AWS dengan SDK Versi 2 dan Bukti Kelayakan Dinamik

Sama seperti pertanyaan sebelumnya, soalan ini mendapatkan panduan tentang menggunakan AWS SDK versi 2 dengan bukti kelayakan yang disimpan dalam pembolehubah. Tidak seperti pendahulunya, SDK versi 2 tidak lagi menggunakan kelas Sesi.

Pertimbangkan fungsi berikut yang digunakan untuk membuat instantiate pelanggan baharu dan menyambung kepada perkhidmatan IAM:

<code class="go">func getIAMClient(ctx context.Context) (*iam.Client, error) {
    cfg, err := config.LoadDefaultConfig(ctx, config.WithRegion("no-region"))
    if err != nil {
        return nil, errors.Wrap(err)
    }

    cfg.HTTPClient, err = getHTTPClient(ctx)
    if err != nil {
        return nil, err
    }

    return iam.NewFromConfig(cfg), nil
}</code>

Untuk menampung berbilang pengguna menggunakan aplikasi secara serentak, penggunaan pembolehubah persekitaran adalah tidak praktikal. Ini memerlukan kaedah alternatif untuk menyerahkan bukti kelayakan kepada pelanggan.

Penyelesaian: Menggunakan StaticCredentialsProvider

Dokumentasi AWS SDK for Go V2 menjelaskan penggunaan StaticCredentialsProvider untuk mencapai objektif ini , seperti yang digariskan dalam bahagian "Kelayakan Statik":

<code class="go">cfg, err := config.LoadDefaultConfig(ctx, config.WithCredentialsProvider(credentials.NewStaticCredentialsProvider("AKID", "SECRET_KEY", "TOKEN")))</code>

Atas ialah kandungan terperinci Bagaimana untuk Menggunakan AWS SDK Versi 2 dengan Bukti Kelayakan Dinamik dalam Go?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn