Identität (Erweiterungsschema für Windows 8.1)
Definiert einen global eindeutigen Bezeichner für ein Paket. Eine Paketidentität wird als Tupel von Attributen des Pakets dargestellt.
Elementhierarchie
- <Paket>
- <Identity>
Syntax
<Identity Name = A string between 3 and 50 characters in length that consists of alpha-numeric, period, and dash characters.
ProcessorArchitecture? = "x86" | "x64" | "arm" | "neutral"
Publisher = A string between 1 and 8192 characters in length that fits the regular expression of a distinguished name : "(CN|L|O|OU|E|C|S|STREET|T|G|I|SN|DC|SERIALNUMBER|Description|PostalCode|POBox|Phone|X21Address|dnQualifier|(OID\.(0|[1-9][0-9]*)(\.(0|[1-9][0-9]*))+))=(([^,+="<>#;])+|".*")(, ((CN|L|O|OU|E|C|S|STREET|T|G|I|SN|DC|SERIALNUMBER|Description|PostalCode|POBox|Phone|X21Address|dnQualifier|(OID\.(0|[1-9][0-9]*)(\.(0|[1-9][0-9]*))+))=(([^,+="<>#;])+|".*")))*". Further, semantic validation ensures that the string is compliant with CertNameToStr Windows API implementation of X.500 rules.
Version = A version string in quad notation, "Major.Minor.Build.Revision".
ResourceId? = A string between 1 and 30 characters in length that consists of alpha-numeric, period, and dash characters. />
Schlüssel
?
optional (null oder eins)
Attribute und Elemente
Attributes
Attribut | BESCHREIBUNG | Datentyp | Erforderlich | Standardwert |
---|---|---|---|---|
Name | Beschreibt den Inhalt des Pakets. Beim Attribut Name wird die Groß-/Kleinschreibung nicht beachtet. Verwenden Sie [DisplayName](.. /appxmanifestschema/element-displayname.md), um Benutzern einen Paketnamen anzuzeigen. Diese Zeichenfolge darf nicht mit einem Zeitraum enden und darf keine der folgenden Zeichenfolgen sein: "CON", "PRN", "AUX", "NUL", "COM1", "COM2", "COM3", "COM4", "COM5", "COM6", "COM7", "COM8", "COM9", "LPT1", "LPT2", "LPT3", "LPT4", "LPT5", "LPT6", "LPT7", "LPT8" und "LPT9". |
Eine Zeichenfolge mit einer Länge von 3 bis 50 Zeichen, die aus alphanumerischen, Perioden- und Bindestrichen besteht. | Ja | |
Processorarchitecture | Beschreibt die Architektur des im Paket enthaltenen Codes. Ein Paket, das ausführbaren Code enthält, muss dieses Attribut enthalten. |
Dieses Attribut kann einen der folgenden Werte haben:
|
Nein | |
Publisher | Beschreibt die Herausgeberinformationen. Das Publisher-Attribut muss mit den Herausgeber-Betreffinformationen des Zertifikats übereinstimmen, das zum Signieren eines Pakets verwendet wird. Weitere Informationen finden Sie unter Verpacken von Apps . |
Eine Zeichenfolge zwischen 1 und 8192 Zeichen, die dem regulären Ausdruck eines Distinguished Name entspricht: "(CN| L|O| OE| E| C|S| STREET| T| G| I|SN| DC|SERIALNUMBER| Beschreibung| PostalCode| POBox| Telefon| X21Address|dnQualifier| (OID\. (0| [1-9] [0-9]*)(\.( 0| [1-9] [0-9]*)+))=(([^,+="<>#;]) +|". *")(, ((CN| L|O| OE| E| C|S| STREET| T| G| I|SN| DC|SERIALNUMBER| Beschreibung| PostalCode| POBox| Telefon| X21Address|dnQualifier| (OID\. (0| [1-9] [0-9]*)(\.( 0| [1-9] [0-9]*)+))=(([^,+="<>#;]) +|". *")))*". Darüber hinaus stellt die semantische Überprüfung sicher, dass die Zeichenfolge mit CertNameToStr Windows API-Implementierung von X.500-Regeln kompatibel ist. | Ja | |
ResourceId | Beschreibt den Typ der im Paket enthaltenen Benutzeroberflächenressourcen. Die ResourceId ist eine vom Herausgeber angegebene Zeichenfolge. Diese Zeichenfolge darf nicht mit einem Zeitraum enden und darf keine der folgenden Zeichenfolgen sein: "CON", "PRN", "AUX", "NUL", "COM1", "COM2", "COM3", "COM4", "COM5", "COM6", "COM7", "COM8", "COM9", "LPT1", "LPT2", "LPT3", "LPT4", "LPT5", "LPT6", "LPT7", "LPT8" und "LPT9". |
Eine Zeichenfolge mit einer Länge von 1 bis 30 Zeichen, die aus alphanumerischen, Perioden- und Bindestrichen besteht. | Nein | |
Version | Die Versionsnummer des Pakets. |
Eine Versionszeichenfolge in Quad-Notation, "Major.Minor.Build.Revision". | Ja |
Untergeordnete Elemente
Keine
Übergeordnete Elemente
Übergeordnetes Element | BESCHREIBUNG |
---|---|
Paket | Definiert das Stammelement eines App-Paketmanifests. Das Manifest beschreibt die Struktur und die Funktionen der Software für das System. |
Hinweise
Das Attribut Name wird vom Betriebssystem und von Entwicklern verwendet, um Pakete zu identifizieren. Das Name-Attribut ist nicht für die Anzeige für Endbenutzer vorgesehen.
Wenn eine App auf verschiedenen Ressourcenpaketen basiert, muss das ResourceId-Attribut für einen bestimmten Paketnamen im Benutzerkonto eindeutig sein. Hauptpaketvarianten, die auf Ressourcen-IDs basieren, dürfen nicht gleichzeitig installiert werden. Es sind jedoch mehrere gleichzeitige Varianten eines Pakets nur für Ressourcen zulässig. Beispiele für mögliche ResoureId-Attribute sind:
- Nordamerika
- Asien
- Europäische Sprachen
Das Publisher-Attribut wird anhand des Betreffnamens des Signaturzertifikats überprüft, wenn signierte Pakete geöffnet werden. Wenn das Publisher-Attribut nicht genau mit dem Namen des Betreffs übereinstimmen, ist das Paket ungültig. Sie können mehrere semantisch äquivalente Zeichenfolgendarstellungen aus dem im Zertifikat gespeicherten Betreffnamen erstellen. Verwenden Sie diese Kanonisierungsregeln, um den Publisher-Attributwert mit diesem Betreffnamen zu übereinstimmen:
Unicode-Werte können UTF-8-codiert sein.
Wenn der Name die Legacy-E-Mail-Komponente enthält, wird der internationalisierte Domänenname (IDN) in Unicode-Form dargestellt.
Objektbezeichner (OIDs) mit X.500-Schlüsselnamen müssen den X.500-Schlüsselnamen verwenden (z.B. CN, nicht 2.5.4.3).
OIDs ohne X.500-Schlüsselnamen werden mit dem Präfix "OID." identifiziert (z.B. OID.2.5.4.34).
OID-Schlüsselnamen werden durch ein Gleichheitszeichen ohne zusätzliche Leerzeichen von ihren Werten getrennt (z. B. CN=JohnSmith).
Mehrere RELATIVE DISTINGUISHED NAME-Einträge (RDN) werden durch ein Komma gefolgt von einem Leerzeichen (z. B. CN=JohnSmith, O=Contoso) getrennt.
Der RDN-Wert enthält nur Anführungszeichen, wenn er führende oder nachfolgende Leerzeichen oder eines der folgenden Zeichen enthält (z.B. CN=" JohnSmith", O="C++ Inc."):
- Komma (,)
- Pluszeichen (+)
- Gleichheitszeichen (=)
- Zollmark (")
- Schrägstrich gefolgt vom Buchstaben n (\n)
- Kleiner als -Zeichen (<)
- Größer als-Zeichen (>)
- Nummernzeichen (#)
- Semikolon (;)
Das Anführungszeichen ist eine Zollmarkierung ("). Wenn der RDN-Wert eine Zollmarkierung enthält, muss die Zollmarkierung zusätzlich zu anführungszeichen ("") doppelte Anführungszeichen enthalten (z.B. CN="Smith"Bill"").
Mehrwertige RDNs sind nicht zulässig (z.B. CN=JohnSmith + O=Contoso).
Diese Regeln folgen dem Verhalten der CertNameToStr-Funktion, die verwendet werden kann, um den erwarteten Publisher-Attributwert aus einem Zertifikat zu bestimmen.
Beispiele
Das folgende Beispiel ist aus dem Paketmanifest eines der SDK-Beispiele entnommen.
<Identity Name="Microsoft.SDKSamples.ApplicationDataSample"
Version="1.0.0.0"
Publisher="CN=Microsoft Corporation, O=Microsoft Corporation, L=Redmond, S=Washington, C=US" />
Anforderungen
Wert | |
---|---|
Namespace | http://schemas.microsoft.com/appx/2010/manifest |