Menü
Ein Beitrag von Adacor

Die Krux mit den Sonderzeichen – OpenStack und die Zeichenkodierungen

Umlaute und das nur in der deutschen Sprache vorkommene ß-Zeichen sorgen in der IT immer wieder für Probleme. Daher ist die Frage wichtig, welcher Zeichensatz verwendet wird, wenn beispielsweise Zeichen verschiedener Sprachen dargestellt werden sollen.
OpenStack in CloudsVor allem bei Programmen wie OpenStack, die hauptsächlich in Englisch entwickelt werden, sind Hindernisse im wahrsten Sinne des Wortes vorprogrammiert, wenn man darauf angewiesen ist, deutsche Sonderzeichen zu verwenden.

Die Problematik bei OpenStack

Dies passiert beispielsweise wenn man eine Authentifizierung über einen LDAP Server macht, der den deutschen Zeichensatz benutzt.Diese Problemstellung kann dadurch gelöst werden, indem man auf einen Zeichensatz umstellt, der deutsche Zeichen beinhaltet.

Da die Module von OpenStack alle in Python geschrieben wurden, muss man den Standard Zeichensatz von Python ändern.

ascii Tabelle

Ascii Tabelle – zum Vergrößern bitte klicken!

Python benutzt standardmäßig den ASCII Zeichensatz, welcher für die englische Sprache alle notwendigen Zeichen mitbringt.

Doch um auch deutsche Umlaute und das Eszett-Zeichen zu benutzen, benötigt man einen Zeichensatz welcher diese Zeichen beinhaltet.
ISO 8859-1 oder UTF-8, beinhalten diese Zeichen.
Um dies in Python zu ändern, muss die Datei sitecustomize.py angepasst werden.

Die Standardkodierung wird wie folgt angegeben:

Import sys
sys.setdefaultencoding(‚utf-8‘)

Zeichensätze und Zeichenkodierungen

Wenn man Probleme mit Zeichen hat, wie hier bei der LDAP-Authentifizierung, kann es helfen wenn man den Standard-Zeichensatz ändert.

Definition Zeichensatz

Ein Zeichensatz ist eine Tabelle (Zeichenvorrat) womit der Rechner eine Umwandlung von einem Wert zu einem Zeichen macht.
Benutzt man den falschen Zeichensatz, dann wird der Wert falsch interpretiert und es entsteht ein falsches Zeichen.

Die Begriffe Zeichenvorrat, Zeichensatz und Zeichenkodierung

Um nun das Problem der falschen Zeichen zu erläutern, sind ein paar Begriffserklärungen notwendig:

  • Zeichenvorrat beschreibt die Menge der Zeichen, die man zur Verfügung hat oder verwenden möchte.
  • Ordnet man den Zeichenvorrat, bringt man die Zeichen also in eine bestimmte Reihenfolge und nummeriert sie durch, bekommt man einen Zeichensatz (engl. kurz charset).
  • Damit der Computer mit den Zeichen noch arbeiten kann, muss er das Muster in Bits kennen. Dafür ist die Zeichenkodierung zuständig. Da im Zeichensatz bereits eine Reihenfolge und Nummerierung festgelegt wurde, braucht dieser also nur noch die Bitmuster zuzuordnen werden.
  • Image

    So werden Überraschungen im Projektverlauf fast zum Vergnügen!

    Hier erfahren Sie, wie Sie Dank spezieller Hosting-Lösungen Kontrolle und Flexibilität perfekt kombinieren können.

    Jetzt informieren

Die wichtigsten Zeichensätze und -kodierungen

In Westeuropa wird der Zeichensatz ISO 8859-1 (auch „Latin 1“ genannt) genutzt. Dieser Zeichensatz enthält die grundlegenden ASCII-Zeichen, der auch die fürs Deutsche wichtige Umlaute umfasst; also ä, ö, ü, Ä, Ö, Ü und ß. Somit kommt man bei deutschen Texten mit diesem Zeichensatz eigentlich aus. Frickelig wird es wenn gleichzeitig Zeichen einer anderen Sprache oder eines anderen Zeichensystems verwendet werden. Dann reicht dieser Zeichensatz nicht mehr aus.

Dafür wurde der Unicode entwickelt, der mit derzeit 220+216 möglichen Zeichen langfristig jedes sinntragende Zeichen beziehungsweise Textelement aller bekannten Schriftkulturen und Zeichensysteme umfassen soll.

Die gebräuchlichste Kodierung für Unicode-Daten ist UTF-8, bei der ein geschickter Trick angewandt wird: denn reicht ein Byte zur Abbildung des Zeichens nicht aus, wird einfach ein zweites Byte dazu genommen. Reicht auch das nicht aus, wird ein weiteres Byte dazu genommen und so weiter.

Damit nun der Rechner weiß, wie er die Daten richtig verarbeiten kann, muss man Ihm mitteilen, welchen Zeichensatz er benutzen soll. Fehlt ihm diese Information dann kommt es zu Fehlinterpretationen, welche z.B. bei einer Authentifizierung zu Fehlern führt.

, , ,


Weitere Artikel zum Thema lesen

Der magische Stundenplan mit Python

IT-News

Der magische Stundenplan mit Python

Als Azubi hat man es nicht leicht. Allein das Überprüfen des Stundenplans nach gewissen Vorfällen kostet gefühlt viel Zeit. Einmal Zeit investieren, dabei etwas...

weiter lesen

Scrum Glossar

IT-News

Was ist Scrum – unser Scrum Glossar

Die wichtigsten Begriffe zur Scrum-Revolution erklären wir euch in unserem Glossar.

weiter lesen

Das Vier-Augen-Prinzip der Programmierung im Erfahrungsbericht

IT-News

Das Vier-Augen-Prinzip der Programmierung im Erfahrungsbericht

Der Artikel Pair Programming unseres Entwickers Patrick Klös erschien zuerst bei Heise.

weiter lesen


Neueste Nachrichten von Adacor

OpenStack Cloud Module

Cloud

Von VMware zur Self Managed Cloud – OpenStack auf dem Prüfstand

Was leistet die Open-Source-Software OpenStack? Wo liegen ihre Grenzen?

weiter lesen

IT Security

EU-DSGVO stellt hohe Ansprüche an Datenschutz

Geforderte Maßnahmen der EU-DSGVO beginnen bei der Datenportabilität d.h. Wie Unternehmen informieren müssen und umfassen den Datenschutz durch Technikgestaltung.

weiter lesen

Nach der Cloud Foq-Computing

Biz & Trends

Eine Orientierung zum Fog-Computing

Nach dem Cloud-Computing kommt mit dem Fog-Computing ein neuer Trend in die IT.

weiter lesen

Diese Website verwendet Cookies. Mit der weiteren Nutzung der Website stimmen Sie unserer Datenschutzerklärung zu.
Für weitere Informationen klicken Sie bitte hier.