Manifes aplikasi Azure Active Directory

Manifes aplikasi berisi definisi semua atribut dari objek aplikasi di platform identitas Microsoft. Manifes ini juga berfungsi sebagai mekanisme untuk memperbarui objek aplikasi. Untuk info lebih lanjut tentang entitas Aplikasi dan skemanya, lihat Dokumentasi entitas Aplikasi Graph API.

Anda dapat mengonfigurasi atribut aplikasi melalui portal Azure atau secara terprogram menggunakan API Microsoft Graph atau SDK Microsoft Graph PowerShell. Namun, ada beberapa skenario saat Anda harus mengedit manifes aplikasi untuk mengonfigurasi atribut aplikasi. Skenario ini meliputi:

  • Jika Anda mendaftarkan aplikasi sebagai akun Microsoft multipenyewa dan pribadi Azure AD, Anda tidak dapat mengubah akun Microsoft yang didukung di UI. Sebagai gantinya, Anda harus menggunakan editor manifes aplikasi untuk mengubah jenis akun yang didukung.
  • Untuk menentukan izin dan peran yang didukung aplikasi, Anda harus memodifikasi manifes aplikasi.

Mengonfigurasi manifes aplikasi

Untuk mengonfigurasi manifes aplikasi:

  1. Pergilah ke portal Microsoft Azure. Cari dan pilih layanan Azure Active Directory.
  2. Pilih Pendaftaran aplikasi.
  3. Pilih aplikasi yang ingin Anda konfigurasi.
  4. Dari halaman Overview (Gambaran Umum) aplikasi, pilih bagian Manifest (Manifes). Editor manifes berbasis web terbuka, yang memungkinkan Anda mengedit manifes di dalam portal. Secara opsional, Anda dapat memilih Download (Unduh) untuk mengedit manifes secara lokal, lalu gunakan Upload (Unggah) untuk menerapkannya kembali ke aplikasi Anda.

Referensi manifes

Bagian ini menjelaskan atribut yang ditemukan di dalam manifes aplikasi.

atribut id

Kunci Jenis nilai
id String

Pengidentifikasi unik untuk aplikasi di dalam direktori. ID ini bukan pengidentifikasi yang digunakan untuk mengidentifikasi aplikasi dalam transaksi protokol apa pun. Ini digunakan untuk referensi objek dalam kueri direktori.

Contoh:

    "id": "f7f9acfc-ae0c-4d6c-b489-0a81dc1652dd",

atribut acceptMappedClaims

Kunci Jenis nilai
acceptMappedClaims Boolean Yang Dapat Diubah ke Null

Seperti yang didokumentasikan di jenis sumber daya apiApplication, ini memungkinkan aplikasi menggunakan pemetaan klaim tanpa menentukan kunci penandatanganan kustom. Aplikasi yang menerima token bergantung pada fakta bahwa nilai klaim dikeluarkan secara otoritatif oleh Microsoft Azure Active Directory dan tidak dapat dirusak. Namun, ketika Anda memodifikasi konten token melalui kebijakan pemetaan klaim, asumsi ini mungkin tidak lagi benar. Aplikasi harus secara eksplisit mengakui bahwa token sudah dimodifikasi oleh pembuat kebijakan pemetaan klaim untuk melindungi diri dari kebijakan pemetaan klaim yang dibuat oleh pelaku jahat.

Peringatan

Jangan menetapkan properti acceptMappedClaims ke true untuk aplikasi multipenyewa, yang dapat memungkinkan pelaku jahat membuat kebijakan pemetaan klaim untuk aplikasi Anda.

Contoh:

    "acceptMappedClaims": true,

atribut accessTokenAcceptedVersion

Kunci Jenis nilai
accessTokenAcceptedVersion Nullable Int32

Menspesifikasikan versi token akses yang diharapkan oleh sumber daya. Parameter ini mengubah versi dan format JWT yang dihasilkan secara mandiri dari titik akhir atau klien yang digunakan untuk meminta token akses.

Titik akhir yang digunakan, v1.0 atau v2.0, dipilih oleh klien dan hanya berdampak pada versi id_tokens. Sumber daya perlu mengonfigurasi accesstokenAcceptedVersion secara eksplisit untuk mengindikasikan format token akses yang didukung.

Nilai yang mungkin untuk accesstokenAcceptedVersion adalah 1, 2, atau null. Jika nilainya null, parameter ini default ke 1, yang sesuai dengan titik akhir v1.0.

Jika signInAudience adalah AzureADandPersonalMicrosoftAccount, nilainya harus 2.

Contoh:

    "accessTokenAcceptedVersion": 2,

atribut addIns

Kunci Jenis nilai
addIns Koleksi

Mendefinisikan perilaku khusus yang layanan yang memanfaatkan dapat gunakan untuk memanggil aplikasi dalam konteks tertentu. Misalnya, aplikasi yang dapat merender aliran file dapat mengatur properti addIns untuk fungsionalitas "FileHandler". Parameter ini akan memungkinkan layanan seperti Microsoft 365 memanggil aplikasi dalam konteks dokumen yang sedang dikerjakan pengguna.

Contoh:

    "addIns": [
       {
        "id": "968A844F-7A47-430C-9163-07AE7C31D407",
        "type":" FileHandler",
        "properties": [
           {
              "key": "version",
              "value": "2"
           }
        ]
       }
    ],

atribut allowPublicClient

Kunci Jenis nilai
allowPublicClient Boolean

Menspesifikasikan jenis aplikasi fallback. Azure AD menyimpulkan jenis aplikasi dari replyUrlsWithType secara default. Ada skenario tertentu saat Azure AD tidak dapat menentukan jenis aplikasi klien. Misalnya, salah satu skenario tersebut adalah alur ROPC tempat permintaan HTTP terjadi tanpa pengalihan URL). Dalam kasus tersebut, Azure AD akan menginterpretasikan jenis aplikasi berdasarkan nilai properti ini. Jika nilai ini diatur ke true (benar), jenis aplikasi fallback diatur sebagai klien publik, seperti aplikasi yang diinstal yang berjalan di perangkat seluler. Nilai default adalah false (salah) yang berarti jenis aplikasi fallback adalah klien rahasia seperti aplikasi web.

Contoh:

    "allowPublicClient": false,

atribut appId

Kunci Jenis nilai
appId String

Menspesifikasikan pengidentifikasi unik untuk aplikasi yang ditetapkan ke suatu aplikasi oleh Azure AD.

Contoh:

    "appId": "601790de-b632-4f57-9523-ee7cb6ceba95",

atribut appRoles

Kunci Jenis nilai
appRoles Koleksi

Mespesifikasikan kumpulan peran yang mungkin dinyatakan oleh aplikasi. Peran ini dapat ditetapkan kepada pengguna, grup, atau perwakilan layanan. Untuk contoh dan info selengkapnya, lihat Menambah peran aplikasi di aplikasi Anda dan menerimanya di token.

Contoh:

    "appRoles": [
        {
           "allowedMemberTypes": [
               "User"
           ],
           "description": "Read-only access to device information",
           "displayName": "Read Only",
           "id": "601790de-b632-4f57-9523-ee7cb6ceba95",
           "isEnabled": true,
           "value": "ReadOnly"
        }
    ],

atribut errorUrl

Kunci Jenis nilai
errorUrl String

Tidak didukung.

atribut groupMembershipClaims

Kunci Jenis nilai
groupMembershipClaims String

Mengonfigurasi klaim groups yang dikeluarkan dalam token akses pengguna atau OAuth 2.0 yang diharapkan aplikasi. Untuk mengatur atribut ini, gunakan salah satu nilai string yang valid berikut ini:

  • "None"
  • "SecurityGroup" (untuk grup keamanan dan peran Azure AD)
  • "ApplicationGroup" (opsi ini hanya mencakup grup yang ditetapkan ke aplikasi)
  • "DirectoryRole" (mendapatkan peran direktori Azure AD tempat pengguna adalah anggotanya)
  • "All" (ini akan mendapatkan semua peran grup keamanan, grup distribusi, dan direktori Azure AD tempat pengguna yang masuk adalah anggotanya).

Contoh:

    "groupMembershipClaims": "SecurityGroup",

atribut optionalClaims

Kunci Jenis nilai
optionalClaims String

Klaim opsional dikembalikan di dalam token oleh layanan token keamanan untuk aplikasi khusus ini.

Saat ini, aplikasi yang mendukung akun pribadi dan Azure AD (terdaftar melalui portal pendaftaran aplikasi) tidak dapat menggunakan klaim opsional. Namun, aplikasi yang terdaftar hanya untuk Azure AD yang menggunakan titik akhir v2.0 bisa mendapat klaim opsional yang mereka minta di dalam manifes. Untuk informasi selengkapnya, lihat Klaim opsional.

Contoh:

    "optionalClaims": null,

atribut identifierUris

Kunci Jenis nilai
identifierUris Array String

URI yang ditentukan pengguna yang secara unik mengidentifikasi aplikasi Web di dalam penyewa Azure AD-nya, atau di dalam domain terverifikasi milik pelanggan. Ketika aplikasi digunakan sebagai aplikasi sumber daya, nilai identifierUri digunakan untuk mengidentifikasi dan mengakses sumber daya secara unik.

Format URI ID aplikasi berbasis skema API dan HTTP berikut ini didukung. Ganti nilai placeholder seperti yang dijelaskan dalam daftar yang mengikuti tabel.

ID aplikasi yang didukung
Format URI
URI ID aplikasi contoh
api://<appId> api://fc4d2d73-d05a-4a9b-85a8-4f2b3a5f38ed
api://<tenantId>/<appId> api://a8573488-ff46-450a-b09a-6eca0c6a02dc/fc4d2d73-d05a-4a9b-85a8-4f2b3a5f38ed
api://<tenantId>/<string> api://a8573488-ff46-450a-b09a-6eca0c6a02dc/api
api://<string>/<appId> api://productapi/fc4d2d73-d05a-4a9b-85a8-4f2b3a5f38ed
https://<tenantInitialDomain>.onmicrosoft.com/<string> https://contoso.onmicrosoft.com/productsapi
https://<verifiedCustomDomain>/<string> https://contoso.com/productsapi
https://<string>.<verifiedCustomDomain> https://product.contoso.com
https://<string>.<verifiedCustomDomain>/<string> https://product.contoso.com/productsapi
  • <appId> - Properti pengidentifikasi aplikasi (appId) dari objek aplikasi.
  • <string> - Nilai string untuk host atau segmen jalur api.
  • <tenantId> - GUID yang dihasilkan oleh Azure untuk mewakili penyewa di dalam Azure.
  • <tenantInitialDomain> - <tenantInitialDomain>.onmicrosoft.com, ketika <tenantInitialDomain> adalah nama domain awal yang ditentukan oleh pembuat penyewa saat pembuatan penyewa.
  • <verifiedCustomDomain> - Domain kustom terverifikasi yang dikonfigurasi untuk penyewa Azure Active Directory Anda.

Catatan

Jika menggunakan skema api://, Anda menambahkan nilai string langsung setelah "api://". Misalnya, api://<string>. Nilai string dapat berupa GUID atau string arbitrer. Jika Anda menambahkan nilai GUID, nilai tersebut harus cocok dengan ID aplikasi atau ID penyewa. Nilai URI ID aplikasi harus unik untuk penyewa Anda. Apabila Anda menambahkan api://<tenantId> sebagai URI ID aplikasi, tidak ada orang lain yang dapat menggunakan URI tersebut di aplikasi lainnya. Rekomendasinya adalah menggunakan api://<appId> sebagai gantinya, atau skema HTTP.

Penting

Nilai URI ID aplikasi tidak boleh diakhiri dengan karakter garis miring "/".

Contoh:

    "identifierUris": "https://contoso.onmicrosoft.com/fc4d2d73-d05a-4a9b-85a8-4f2b3a5f38ed",

atribut informationalUrls

Kunci Jenis nilai
informationalUrls String

Menspesifikasikan tautan ke ketentuan layanan dan pernyataan privasi dari aplikasi. Ketentuan layanan dan pernyataan privasi dimunculkan kepada pengguna melalui pengalaman persetujuan pengguna. Untuk informasi selengkapnya, lihat Cara: Menambah Ketentuan layanan dan pernyataan privasi untuk aplikasi Azure AD yang terdaftar.

Contoh:

    "informationalUrls": {
        "termsOfService": "https://MyRegisteredApp/termsofservice",
        "support": "https://MyRegisteredApp/support",
        "privacy": "https://MyRegisteredApp/privacystatement",
        "marketing": "https://MyRegisteredApp/marketing"
    },

atribut keyCredentials

Kunci Jenis nilai
keyCredentials Koleksi

Menyimpan referensi ke informasi masuk yang ditetapkan aplikasi, rahasia bersama berbasis string, dan sertifikat X.509. Informasi masuk ini digunakan saat meminta token akses (ketika aplikasi bertindak sebagai klien, alih-alih sebagai sumber daya).

Contoh:

    "keyCredentials": [
        {
           "customKeyIdentifier":null,
           "endDate":"2018-09-13T00:00:00Z",
           "keyId":"<guid>",
           "startDate":"2017-09-12T00:00:00Z",
           "type":"AsymmetricX509Cert",
           "usage":"Verify",
           "value":null
        }
    ],

atribut knownClientApplications

Kunci Jenis nilai
knownClientApplications Array String

Digunakan untuk persetujuan bundel ika Anda memiliki solusi yang berisi dua bagian: aplikasi klien dan aplikasi API web kustom. Jika Anda memasukkan appID aplikasi klien ke dalam nilai ini, pengguna hanya perlu menyetujui aplikasi klien sebanyak satu kali. Azure AD akan tahu bahwa menyetujui klien berarti secara implisit menyetujui API web. Ini akan secara otomatis menyediakan perwakilan layanan untuk klien dan API web pada saat yang sama. Baik klien dan aplikasi API web harus terdaftar pada penyewa yang sama.

Contoh:

    "knownClientApplications": ["f7f9acfc-ae0c-4d6c-b489-0a81dc1652dd"],

atribut logoUrl

Kunci Jenis nilai
logoUrl String

Nilai baca saja (read only) yang menunjuk ke URL CDN ke logo yang diunggah di portal.

Contoh:

    "logoUrl": "https://MyRegisteredAppLogo",

atribut logoutUrl

Kunci Jenis nilai
logoutUrl String

URL untuk keluar dari aplikasi.

Contoh:

    "logoutUrl": "https://MyRegisteredAppLogout",

atribut name

Kunci Jenis nilai
name String

Nama tampilan untuk aplikasi.

Contoh:

    "name": "MyRegisteredApp",

atribut oauth2AllowImplicitFlow

Kunci Jenis nilai
oauth2AllowImplicitFlow Boolean

Menspesifikasikan apakah aplikasi web ini dapat meminta token akses alur implisit OAuth2.0. Defaultnya adalah false (salah). Bendera ini digunakan untuk aplikasi berbasis browser, seperti aplikasi halaman tunggal JavaScript. Untuk mempelajari selengkapnya, masukkan OAuth 2.0 implicit grant flow dalam daftar isi dan lihat topik tentang alur implisit.

Contoh:

    "oauth2AllowImplicitFlow": false,

atribut oauth2AllowIdTokenImplicitFlow

Kunci Jenis nilai
oauth2AllowIdTokenImplicitFlow Boolean

Menspesifikasikan apakah aplikasi web ini dapat meminta token ID alur implisit OAuth2.0. Defaultnya adalah false (salah). Bendera ini digunakan untuk aplikasi berbasis browser, seperti aplikasi halaman tunggal JavaScript.

Contoh:

    "oauth2AllowIdTokenImplicitFlow": false,

atribut oauth2Permissions

Kunci Jenis nilai
oauth2Permissions Koleksi

Menspesifikasikan kumpulan cakupan izin OAuth 2.0 yang dipaparkan aplikasi API web (resource) ke aplikasi klien. Cakupan izin ini dapat diberikan kepada aplikasi klien selama persetujuan.

Contoh:

    "oauth2Permissions": [
       {
          "adminConsentDescription": "Allow the app to access resources on behalf of the signed-in user.",
          "adminConsentDisplayName": "Access resource1",
          "id": "<guid>",
          "isEnabled": true,
          "type": "User",
          "userConsentDescription": "Allow the app to access resource1 on your behalf.",
          "userConsentDisplayName": "Access resources",
          "value": "user_impersonation"
        }
    ],

atribut oauth2RequiredPostResponse

Kunci Jenis nilai
oauth2RequiredPostResponse Boolean

Menspesifikasikan apakah, sebagai bagian dari permintaan token OAuth 2.0, Azure AD akan mengizinkan permintaan POST, dibanding dengan permintaan GET. Defaultnya adalah false (salah), yang menspesifikasikan bahwa hanya permintaan GET yang akan diizinkan.

Contoh:

    "oauth2RequirePostResponse": false,

atribut parentalControlSettings

Kunci Jenis nilai
parentalControlSettings String
  • countriesBlockedForMinors menspesifikasikan negara/wilayah tempat aplikasi diblokir untuk anak di bawah umur.
  • legalAgeGroupRule menspesifikasikan aturan kelompok dewasa menurut hukum (legal age) yang berlaku untuk pengguna aplikasi. Dapat diatur keAllow, RequireConsentForPrivacyServices, RequireConsentForMinors, RequireConsentForKids, atau BlockMinors.

Contoh:

    "parentalControlSettings": {
        "countriesBlockedForMinors": [],
        "legalAgeGroupRule": "Allow"
    },

atribut passwordCredentials

Kunci Jenis nilai
passwordCredentials Koleksi

Lihat deskripsi untuk properti keyCredentials.

Contoh:

    "passwordCredentials": [
      {
        "customKeyIdentifier": null,
        "endDate": "2018-10-19T17:59:59.6521653Z",
        "keyId": "<guid>",
        "startDate":"2016-10-19T17:59:59.6521653Z",
        "value":null
      }
    ],

atribut preAuthorizedApplications

Kunci Jenis nilai
preAuthorizedApplications Koleksi

Mencantumkan aplikasi dan izin yang diminta untuk persetujuan implisit. Mengharuskan admin untuk memberi persetujuan untuk aplikasi. preAuthorizedApplications tidak mengharuskan pengguna untuk menyetujui izin yang diminta. Izin yang tercantum dalam preAuthorizedApplications tidak memerlukan persetujuan pengguna. Namun, setiap izin tambahan yang diminta yang tidak tercantum dalam preAuthorizedApplications memerlukan persetujuan pengguna.

Contoh:

    "preAuthorizedApplications": [
       {
          "appId": "abcdefg2-000a-1111-a0e5-812ed8dd72e8",
          "permissionIds": [
             "8748f7db-21fe-4c83-8ab5-53033933c8f1"
            ]
        }
    ],

atribut publisherDomain

Kunci Jenis nilai
publisherDomain String

Domain penerbit terverifikasi untuk aplikasi. Baca-saja.

Contoh:

    "publisherDomain": "{tenant}.onmicrosoft.com",

atribut replyUrlsWithType

Kunci Jenis nilai
replyUrlsWithType Koleksi

Properti multinilai ini menyimpan daftar nilai redirect_uri yang akan diterima Azure AD sebagai tujuan saat mengembalikan token. Setiap nilai URI harus memuat nilai jenis aplikasi terkait. Nilai jenis yang didukung adalah:

  • Web
  • InstalledClient
  • Spa

Untuk mempelajari lebih lanjut, lihat pembatasan dan batasan replyUrl.

Contoh:

    "replyUrlsWithType": [
       {
          "url": "https://localhost:4400/services/office365/redirectTarget.html",
          "type": "InstalledClient"
       }
    ],

atribut requiredResourceAccess

Kunci Jenis nilai
requiredResourceAccess Koleksi

Dengan persetujuan dinamis, requiredResourceAccess mendorong pengalaman persetujuan admin dan pengalaman persetujuan pengguna untuk pengguna yang menggunakan persetujuan statis. Namun, parameter ini tidak mendorong pengalaman persetujuan pengguna untuk kasus umum.

  • resourceAppId adalah pengidentifikasi unik untuk sumber daya yang aksesnya dibutuhkan aplikasi. Nilai ini harus sama dengan appId yang dideklarasikan pada aplikasi sumber daya target.
  • resourceAccess adalah array yang mencantumkan cakupan izin OAuth2.0 dan peran aplikasi yang diperlukan aplikasi dari sumber daya yang ditentukan. Memuat nilai id dan type dari sumber daya yang ditentukan.

Contoh:

    "requiredResourceAccess": [
        {
            "resourceAppId": "00000002-0000-0000-c000-000000000000",
            "resourceAccess": [
                {
                    "id": "311a71cc-e848-46a1-bdf8-97ff7156d8e6",
                    "type": "Scope"
                }
            ]
        }
    ],

atribut samlMetadataUrl

Kunci Jenis nilai
samlMetadataUrl String

URL ke metadata SAML untuk aplikasi.

Contoh:

    "samlMetadataUrl": "https://MyRegisteredAppSAMLMetadata",

atribut signInUrl

Kunci Jenis nilai
signInUrl String

Menspesifikasikan URL ke halaman awal aplikasi.

Contoh:

    "signInUrl": "https://MyRegisteredApp",

atribut signInAudience

Kunci Jenis nilai
signInAudience String

Menspesifikasikan akun Microsoft apa yang didukung untuk aplikasi saat ini. Nilai yang didukung adalah:

  • AzureADMyOrg - Pengguna dengan akun kantor atau sekolah Microsoft di penyewa Azure AD organisasi saya (misalnya, penyewa tunggal)
  • AzureADMultipleOrgs - Pengguna dengan akun kantor atau sekolah Microsoft di penyewa Azure AD organisasi saya (misalnya, multipenyewa)
  • AzureADandPersonalMicrosoftAccount - Pengguna dengan akun Microsoft pribadi, atau akun kantor atau sekolah di penyewa Azure AD dari organisasi mana pun
  • PersonalMicrosoftAccount - Akun pribadi yang digunakan untuk masuk ke layanan, seperti Xbox dan Skype.

Contoh:

    "signInAudience": "AzureADandPersonalMicrosoftAccount",

atribut tags

Kunci Jenis nilai
tags Array String

String kustom yang dapat digunakan untuk mengategorikan dan mengidentifikasi aplikasi.

Contoh:

    "tags": [
       "ProductionApp"
    ],

Masalah umum

Batas manifes

Manifes aplikasi memiliki beberapa atribut yang disebut sebagai koleksi; misalnya, appRoles, keyCredentials, knownClientApplications, identifierUris, redirectUris, requiredResourceAccess, dan oauth2Permissions. Dalam manifes aplikasi lengkap untuk aplikasi apa pun, jumlah total entri dalam semua koleksi yang digabungkan telah dibatasi sebesar 1200. Jika sebelumnya Anda menspesifikasikan 100 URI pengalihan dalam manifes aplikasi, Anda hanya memiliki 1100 entri yang tersisa untuk digunakan di semua gabungan koleksi lain yang membentuk manifes.

Catatan

Jika Anda mencoba menambah lebih dari 1200 entri di dalam manifes aplikasi, Anda mungkin melihat kesalahan "Gagal memperbarui aplikasi xxxxxx. Detail kesalahan: Ukuran manifes melebihi batasnya. Silakan kurangi jumlah nilai dan coba lagi permintaan Anda."

Atribut yang tidak didukung

Manifes aplikasi merepresentasikan skema model aplikasi yang mendasarinya di Azure AD. Seiring berkembangnya skema yang mendasarinya, editor manifes akan diperbarui untuk mencerminkan skema baru dari waktu ke waktu. Akibatnya, Anda mungkin melihat atribut baru yang muncul di dalam manifes aplikasi. Dalam kesempatan yang langka, Anda mungkin melihat perubahan sintaktik atau semantik pada atribut yang ada atau Anda mungkin menemukan atribut yang ada sebelumnya tidak didukung lagi. Misalnya, Anda akan melihat atribut baru dalam Pendaftaran aplikasi, yang dikenal dengan nama yang berbeda dalam pengalaman Pendaftaran aplikasi (Legacy).

Pendaftaran aplikasi (Legacy) Pendaftaran aplikasi
availableToOtherTenants signInAudience
displayName name
errorUrl -
homepage signInUrl
objectId Id
publicClient allowPublicClient
replyUrls replyUrlsWithType

Untuk deskripsi untuk atribut ini, lihat bagian referensi manifes.

Saat mencoba mengunggah manifes yang diunduh sebelumnya, Anda mungkin melihat salah satu kesalahan berikut. Kesalahan ini kemungkinan karena editor manifes sekarang mendukung versi skema yang lebih baru, yang tidak cocok dengan yang Anda coba unggah.

  • "Gagal memperbarui aplikasi xxxxxx. Detail kesalahan: Pengidentifikasi objek tidak valid ‘tidak terdefinisi'. []."
  • "Gagal memperbarui aplikasi xxxxxx. Detail kesalahan: Satu atau beberapa nilai properti yang ditentukan tidak valid. []."
  • "Gagal memperbarui aplikasi xxxxxx. Detail kesalahan: Tidak diizinkan untuk mengatur availableToOtherTenants dalam versi api ini untuk diperbarui. []."
  • "Gagal memperbarui aplikasi xxxxxx. Detail kesalahan: Pembaruan properti 'replyUrls' tidak diperbolehkan untuk aplikasi ini. Gunakan properti 'replyUrlsWithType' sebagai gantinya. []."
  • "Gagal memperbarui aplikasi xxxxxx. Detail kesalahan: Nilai tanpa nama jenis ditemukan dan jenis yang diharapkan tidak tersedia. Ketika model ditentukan, setiap nilai dalam payload harus memiliki jenis yang dapat ditentukan dalam payload itu, secara eksplisit oleh pemanggil atau secara implisit disimpulkan dari nilai induk. []"

Saat Anda melihat salah satu kesalahan ini, kami merekomendasikan tindakan berikut:

  1. Edit atribut satu per satu di editor manifes daripada mengunggah manifes yang diunduh sebelumnya. Gunakan tabel referensi manifes untuk memahami sintaks dan semantik dari atribut lama dan baru sehingga Anda dapat berhasil mengedit atribut yang Anda minati.
  2. Jika alur kerja mengharuskan Anda menyimpan manifes di repositori sumber untuk digunakan nanti, kami sarankan untuk melakukan rebasing manifes yang disimpan di repositori Anda dengan yang Anda lihat di pengalaman Pendaftaran aplikasi.

Langkah berikutnya

Gunakan bagian komentar berikut untuk memberi umpan balik yang membantu memperbaiki dan membentuk konten kami.