Gelişmiş İzinleri Tanıtıyoruz

Kullanıcılar adına işlem yapmak için dapp'lere ek imza, ayrı cüzdan veya velayet ödünleşimi olmaksızın kapsamlı, süreli erişim verin.

5 dakika
Gelişmiş İzinleri Tanıtıyoruz

Yeni başlattığımız Advanced Permissions—ERC-7715 üzerine inşa edilmiş ve MetaMask Smart Accounts Kit'in bir parçası—kullanıcıların tek bir etkileşimde bir dapp'in neler yapabileceğini tam olarak onaylamasına olanak tanır. Dapp'iniz bu kapsam dahilinde bir oturum hesabı aracılığıyla çalışır. Kullanıcının cüzdanı her zaman kendi kontrolünde kalır.

Abonelikler, DCA, AI ajanları, vesting, otomatik bileşik getiri: bunları geçici çözümler bir araya getirmeden oluşturmak için standart bir yol bekliyorsanız, işte bu tam aradığınız şey.

Advanced Permissions'ı neden geliştirdik

Kripto cüzdanları tarihsel olarak her işlemin açık bir kullanıcı imzası gerektirdiği basit bir etkileşim modeli izledi. Bu durum, tekrarlayan açılır pencereler, uygulama ile cüzdan arasında geçiş yapma ve onay yorgunluğu anlamına geliyordu. Zamanla kullanıcılar, istekleri okumadan alışkanlıkla onaylamaya başladı; bu da bilinçli onayın tam tersi bir duruma yol açtı.

Ayrıca bir dapp'in cüzdandan kapsamlı izinler talep etmesi için standart bir yol da yoktu. Bu olmadan, abonelikler, AI ajanları ve zaman sınırlı erişim gibi tüm ürün kategorileri iyi bir şekilde oluşturulması zor ya da imkânsız olmaya devam etti.

Gömülü cüzdanlar bu sürtüşmenin bir kısmını çözdü; ancak farklı bir ödünleşim getirdi. Kullanıcılar her dapp için ayrı bakiyelerle karşılaştı ve varlıklarını birden fazla adres üzerinden yönetmek zorunda kaldı. Deneyim daha da parçalı hale geldi.

Advanced Permissions farklı bir yaklaşım benimser: tek cüzdan, kapsamlı erişim.

Advanced Permissions nedir?

Advanced Permissions, kullanıcıların tam cüzdan erişiminden vazgeçmeden veya her işlemi imzalamadan bir dapp'e kendi adlarına belirli, sınırlı işlemler gerçekleştirme yetkisi vermesine olanak tanır.

Protokol düzeyinde nasıl çalıştığı aşağıda açıklanmıştır:

  1. Dapp'iniz, kullanıcının MetaMask cüzdanından kapsamlı bir izin talep ederek wallet_requestExecutionPermissions'ı çağırır.

  2. MetaMask, tam olarak neyin talep edildiğini gösteren insan tarafından okunabilir bir onay ekranı görüntüler: varlık, miktar, süre ve tüm kısıtlamalar.

  3. Kullanıcı inceler, isteğe bağlı olarak parametreleri ayarlar (talebiniz buna izin veriyorsa) ve onaylar.

  4. Dapp'iniz, dapp'inizin oluşturduğu ve kontrol ettiği amaca özel bir hesap (EOA veya akıllı hesap) olan bir oturum hesabı aracılığıyla verilen kapsam dahilinde çalışır. Oturum hesabı hiçbir zaman kullanıcı fonlarını tutmaz. İzinleri ERC-7710 delegasyonu aracılığıyla kullanır ve işlemleri tanımlanan sınırlar dahilinde doğrudan kullanıcının MetaMask hesabından gerçekleştirir.

Örneğin, bir kullanıcı bir AI ajanının 30 gün boyunca ETH satın almak için günde en fazla 10 USDC harcaması için bir DCA stratejisi kurabilir. Her gün her işlemi imzalamak yerine kullanıcı, MetaMask aracılığıyla tek ve kapsamlı bir izni onaylar.

Arayüz, onaydan önce koşulları, varlığı, miktarı ve süreyi açıkça özetler. İzin verildikten sonra uygulama, tanımlanan sınırlar dahilinde kullanıcılar adına işlemleri gerçekleştirebilir.

Desteklenen izin türleri

ERC-7715, talep edilmesi gereken izinlerin spesifikasyonlarını ve standartlarını ile bu izinlere uygulanması gereken kuralları tanımlar.

Smart Accounts Kit bunu dört uygulama düzeyinde izin türüyle genişletir:

Kategori

İzin türleri

Ne yapar

Örnek kullanım senaryoları

Periyodik

erc20-token-periodic, native-token-periodic

Token transferleri için dönem başına ödenek; her dönem sıfırlanır

Abonelikler, DCA stratejileri, yinelenen gas bütçeleri

Akış

erc20-token-stream, native-token-stream

Yapılandırılabilir başlangıç, oran ve üst sınır ile doğrusal akış ödeneği

Vesting, sürekli ödemeler, kademeli kilit açma

İptal

erc20-revocation

Bir dapp'in kullanıcı adına ERC-20 token onaylarını iptal etmesine olanak tanır

Eski veya riskli onay izinlerini temizleme

Her izin türü, sona erme süresi, insan tarafından okunabilir izin gerekçesi ve isAdjustmentAllowed ile ilgili parametreleri kabul eder. Tam şema için Advanced Permissions referansına bakın.

Neler oluşturabilirsiniz

Advanced Permissions, modeli tekrarlanan onaylardan niyet tabanlı yürütmeye taşır: bir kullanıcı kapsamlı izinleri bir kez tanımlar ve eylemler zaman içinde bu kapsam dahilinde gerçekleştirilir.

  1. Otomatik ve yinelenen akışlar: Abonelikler, DCA stratejileri ve otomatik bileşik getiri, tek seferlik bir onayın ardından çalışabilir. Bunları, faturalama veya yürütme döngünüzle eşleşen bir periodDuration ile erc20-token-periodic veya native-token-periodic izinlerine eşleyin.

  2. Ajan tabanlı yürütme: AI ajanları, kullanıcı tanımlı sınırlar dahilinde işlem yapabilir, yeniden dengeleyebilir veya eylemler gerçekleştirebilir. Ajan, oturum hesabının anahtarını kontrol eder ve delegasyon aracılığıyla yürütür; kullanıcının ana cüzdanı hiçbir zaman açığa çıkmaz ve ajan yalnızca verilen kapsam dahilinde çalışabilir. Ayrı cüzdan finansmanı gerekmez.

  3. Zaman sınırlı erişim: İzinler, vesting takvimi, zamanlanmış yürütmeler veya oyun içi oturum eylemleri gibi kullanım senaryolarını destekleyen startTime ve expiry parametrelerini kabul eder. Kademeli token serbest bırakma için akış izinleriyle birleştirin.

Advanced Permissions güvenlik modeli

Advanced Permissions, Smart Accounts Kit'in Akıllı Sözleşmeleri aracılığıyla zincir üzerinde uygulanır. Bunun pratikte ne anlama geldiği aşağıda açıklanmıştır:

  • Tasarım gereği kapsamlı: Her izin, oturum hesabının neye erişebileceğini tam olarak tanımlar: varlık, miktar, zaman penceresi ve transfer türü. Delegation Framework'ün kısıtlama uygulayıcıları, kapsam dışındaki her türlü yürütmeyi reddeder.

  • İnsan tarafından okunabilir onay: MetaMask, kullanıcı herhangi bir şey vermeden önce tam izin parametrelerini gösteren zengin bir onay arayüzü görüntüler.

  • Kullanıcı tarafından ayarlanabilir: İzin talebiniz isAdjustmentAllowed: true olarak ayarlanmışsa kullanıcılar, onaylamadan önce parametreleri değiştirebilir (ör. miktarı azaltma veya süreyi kısaltma).

  • İptal edilebilir: Kullanıcılar, MetaMask'ın Dapp bağlantıları seçeneği aracılığıyla istedikleri zaman aktif herhangi bir izni iptal edebilir.

  • Oturum hesapları fon tutmaz: Yürütme, kullanıcının Akıllı Hesabından delegasyon kullanımı yoluyla gerçekleşir. Oturum hesabı bir imzalama anahtarıdır, bir saklama noktası değildir.

Oluşturmaya hazır mısınız? Bugün Smart Accounts Kit'teki Advanced Permissions ile başlayın.


Ek Advanced Permissions kaynakları

Gelişmiş İzinler hakkında sık sorulan sorular

Yapay zeka tarafından çevrildi. Hatalar içerebilir. Lütfen her zaman bilgileri doğrulayın.

Çeviriyi değerlendir
  • Ayush Bherwani
    Ayush Bherwani

      Ayush Bherwani is a Senior Developer Relations manager at MetaMask.

      Tüm makaleleri oku