Alibaba Cloud CLI kimlik doğrulamasını AccessKey çiftleri yerine OAuth ile yapın. OAuth, tarayıcı tabanlı PKCE oturum açma akışı aracılığıyla kısa ömürlü STS kimlik bilgileri elde eder ve yerel yapılandırma dosyalarındaki düz metin anahtarlarını ortadan kaldırır.
Genel Bakış
Alibaba Cloud CLI v3.0.299 ve sonraki sürümler, bir kimlik bilgisi türü olarak OAuth'u destekler. OAuth, Alibaba Cloud kaynaklarına erişmek için bir belirteç almak üzere OAuth 2.0 PKCE akışına dayalı etkileşimli bir tarayıcı oturum açma işlemi kullanır.
AccessKey çifti kimlik doğrulamasına kıyasla avantajları şunlardır:
Geliştirilmiş güvenlik: Yerel yapılandırma dosyalarında düz metin AccessKey çiftleri bulunmaz; bu durum, kimlik bilgilerinin sızdırılma riskini azaltır.
Mevcut kimlik doğrulama entegrasyonu: Geçiş anahtarları (passkeys), MFA ve SSO (kullanıcı tabanlı ve rol tabanlı) ile uyumludur.
Ön Koşullar
Aşağıdaki gereksinimlerin karşılandığından emin olun:
CLI sürümü: Alibaba Cloud CLI
v3.0.299veya sonraki bir sürüm yüklü olmalıdır.Yönetici izinleri: İlk kurulumu yapan RAM yöneticisinin
AliyunRAMFullAccessiznine sahip olması gerekir.Ortam: CLI ve tarayıcı aynı cihazda çalışmalıdır. Headless ortamlar (SSH ile bağlı Linux terminalleri gibi) desteklenmez.
Yordam
-
Bir yönetici CLI uygulamasını oluşturur. Bir RAM yöneticisi, iki yöntemden birini kullanarak RAM'de CLI uygulamasını oluşturur:
Yönetici onayı yoluyla oluşturma. Bir RAM yöneticisi, CLI'den ilk OAuth oturum açma işlemini başlatır ve tarayıcıda onay verir. Sistem otomatik olarak
official-cliadlı bir OAuth uygulaması oluşturur.Konsoldan sağlama. Bir RAM yöneticisi, onay adımını atlayarak
official-cliuygulamasını RAM konsolundan sağlar.
Bir yönetici kimlikleri atar. Bir RAM yöneticisi (kök hesap değil), uygulamaya RAM kullanıcıları veya RAM rolleri atar. Yalnızca atanmış kimlikler OAuth aracılığıyla oturum açabilir.
Bir kullanıcı CLI'yi yetkilendirir ve oturum açar. Atanan RAM kullanıcısı, bir tarayıcı açan yapılandırma komutunu çalıştırır. Kullanıcı oturum açıp yetki verdikten sonra CLI, kimlik doğrulamayı tamamlamak için bir belirteç elde eder.
Adım 1: CLI uygulamasını oluşturun
Bu adımı, AliyunRAMFullAccess izinlerine sahip bir RAM yöneticisi yapar.
Yönetici onayı yoluyla oluşturma
-
OAuth kimlik doğrulama modunu seçin. OAuth oturum açma yapılandırmasını başlatmak için aşağıdaki komutu çalıştırın.
OAuthProfilegibi bir profil adı belirtin.aliyun configure --profile OAuthProfile --mode OAuth -
Oturum açma sitesini seçin. İstendiğinde,
OAuth Site Typedeğerini girin.aliyun configure --profile OAuthProfile --mode OAuth Configuring profile 'OAuthProfile' in 'OAuth' authenticate mode... OAuth Site Type (CN: 0 or INTL: 1, default: CN):Alibaba Cloud China için
0veyaCNgirin.Alibaba Cloud International için
1veyaINTLgirin.Varsayılanı (CN) kullanmak için Enter tuşuna basın.
-
Yönetici olarak oturum açın. CLI otomatik olarak bir tarayıcı açar. Tarayıcı açılmazsa, CLI isteminden SignIn url bağlantısını kopyalayın ve tarayıcınıza yapıştırın.
Örnek:
If the browser does not open automatically, use the following URL to complete the login process: SignIn url: https://signin.alibabacloud.com/oauth2/v1/auth?response_type=code&client_id=... -
Yönetici onayı verin. Official Application Authorization sayfasında, Grants öğesine tıklayın. Bu işlem, hesabınızda
official-cliadlı bir OAuth üçüncü taraf uygulaması oluşturur. Bu onay tek seferlik bir işlemdir ve yalnızcaofficial-cliuygulaması silindiğinde tekrar gerekir.
CLI, yetkilendirme sırasında aşağıdaki OAuth kapsamlarını ister. Kapsamlar, uygulamanın kullanıcı adına kullanabileceği izinleri tanımlar.
OAuth kapsamı
Açıklama
openidRAM kullanıcısının OpenID'sini alır — Alibaba Cloud UID veya kullanıcı adı gibi hassas bilgileri ifşa etmeyen benzersiz bir tanımlayıcı.
/internal/ram/userstsAlibaba Cloud hizmet API'lerini çağırmak için bir STS kimlik bilgisi alır.
NotBu kapsam şu anda yalnızca resmi CLI uygulaması için kullanılabilir.
Konsoldan sağlama
RAM konsoluna giriş yapın.
Sol gezinme bölmesinde, seçeneklerini belirleyin ve ardından Third-party Application sekmesine tıklayın.
Third-party Application sekmesinde, Provision Official Application öğesine tıklayın.
-
Provision Official Application iletişim kutusunda, Official CLI seçeneğini belirleyin ve OK düğmesine tıklayın.

Third-party Application sekmesinde,
official-cliuygulamasının oluşturulduğunu doğrulayın.
Adım 2: Kimlikleri atayın
CLI uygulamasını yönetici onayı yoluyla oluşturduysanız, yetkilendirmeden sonra kullanıcı atamanız istenir. Uygulamayı konsoldan sağladıysanız 1. adımı atlayın.
-
Go now öğesine tıklayın. Sayfa, RAM konsolundaki OAuth uygulama ayrıntılarına yönlendirilir.

Alternatif olarak, RAM konsoluna giriş yapın, yolunu izleyin, Third-party Application sekmesine tıklayın ve Third-party Application listesinde
official-cliuygulamasını bulup tıklayın. official-cliuygulama ayrıntıları sayfasında, Allowed Identities sekmesine tıklayın ve ardından Add Users or roles seçeneğine tıklayın.-
Add Users or roles panelinde, yetkilendirmek istediğiniz RAM kullanıcılarını veya RAM rollerini seçin ve ardından OK düğmesine tıklayın.
Adım 3: CLI'yi yetkilendirin ve oturum açın
Bu adımı, official-cli uygulamasına atanmış bir RAM kullanıcısı kendi cihazında yapar.
-
OAuth kimlik doğrulama modunu seçin. OAuth oturum açma yapılandırmasını başlatmak için aşağıdaki komutu çalıştırın.
aliyun configure --profile OAuthProfile --mode OAuth Oturum açma sitesini seçin. İstendiğinde,
CNveyaINTLseçeneğini belirleyin.Kullanıcı olarak oturum açın. Açılan tarayıcı penceresinde RAM kullanıcı kimliğinizle oturum açın.
-
Kullanıcı yetkisi verin. User Authorization sayfasında, Grants öğesine tıklayın. Kullanıcı yetkisi yalnızca ilk oturum açmada gerekir.
official-cliuygulaması silinmediği sürece sonraki oturum açmalarda bu adım atlanır.
Rol ile oturum açma. Bir RAM rolüyle de oturum açabilirsiniz. Kimlik sağlayıcınızdan (IdP) rol tabanlı SSO kullanın veya konsola giriş yapın ve rol değiştirin. Rol oturumunu kurduktan sonra yapılandırma komutunu çalıştırın. CLI, kimlik doğrulamayı tamamlamak için bu etkin oturumu kullanır.
NotYönetici onayı ve kullanıcı yetkisi farklı amaçlara hizmet eder. Yönetici onayı verilmiş olsa bile kullanıcı yetkisi gereklidir.
Yönetici onayı:
official-cliuygulamasını Alibaba Cloud hesabınıza kaydeder ve atanmış kimliklerin bu uygulamaya erişmesine olanak tanır.Kullanıcı yetkisi: CLI'nin Alibaba Cloud kaynaklarına erişmesine veya kullanıcı adına belirli eylemleri yapmasına izin verir.
-
Varsayılan bölgeyi ayarlayın. Yetkilendirme başarılı olduktan sonra terminale dönün ve varsayılan bir bölge girin.
Default Region Id []: cn-hangzhouDefault Region Id []: ap-southeast-1NotBazı cloud ürünleri çapraz bölge erişimini desteklemez. Varsayılan bölgeyi kaynaklarınızın bulunduğu bölge olarak ayarlayın.
Terminalde
Configure Doneve bir karşılama mesajı görüntülendiğinde yapılandırma tamamlanmış olur.-
(İsteğe bağlı) Oturum açmış kimliği doğrulayın. Geçerli CLI kimliğini kontrol etmek için aşağıdaki komutu çalıştırın:
aliyun sts get-caller-identity --profile OAuthProfile
Sınırlamalar
official-cliuygulaması bir kullanıcı grubuna atanamaz. Belirli RAM kullanıcılarına veya RAM rollerine atayın.CLI ve tarayıcı aynı cihazda çalışmalıdır. Headless ortamlar (SSH ile bağlı Linux sunucuları gibi) desteklenmez.
Sorun Giderme
Yönetici onayı sırasında "Unauthorized call" hatası
Neden: Tarayıcıda oturum açılan hesabın AliyunRAMFullAccess izni yok ve bir RAM yönetici hesabı değil.
Çözüm: Oturumu kapatın, AliyunRAMFullAccess iznine sahip bir RAM yönetici hesabıyla yeniden oturum açın ve tekrar deneyin. Gerekli izinlere sahip değilseniz yöneticinize başvurun.