Skip to content

Commit 2e30d6b

Browse files
authored
Merge pull request #242 from adobe-apiplatform/v2
prepare for 2.2rc1 build
2 parents 6ec7d0d + 8d0c11b commit 2e30d6b

File tree

81 files changed

+712
-528
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

81 files changed

+712
-528
lines changed

Makefile

Lines changed: 10 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,17 @@
1-
USE_WHEEL := no
1+
USE_MISC_BUILD := no
22
RM := rm -rf
33

44
ifeq ($(OS),Windows_NT)
55
output_file_extension = .pex
66
rm_path := $(shell python -c "import distutils.spawn; print(distutils.spawn.find_executable('rm'))")
7-
ifeq ($(rm_path),None)
8-
RM := rmdir /S /Q
9-
endif
7+
ifeq ($(rm_path),None)
8+
RM := rmdir /S /Q
9+
endif
1010
python_arch := $(shell python -c "import platform; print platform.architecture()[0]")
11-
ifeq ($(python_arch),64bit)
12-
python_ldap_requirements := misc/build/Win64/python-ldap-requirements.txt
13-
USE_WHEEL := yes
14-
endif
11+
ifeq ($(python_arch),64bit)
12+
misc_build_location := misc/build/Win64/
13+
USE_MISC_BUILD := yes
14+
endif
1515
endif
1616

1717
output_dir = dist
@@ -21,11 +21,10 @@ pex:
2121
pip install --upgrade pip
2222
pip install pex requests wheel
2323
-$(RM) $(output_dir)
24-
ifeq ($(USE_WHEEL),yes)
25-
pip wheel -w wheelhouse -r $(python_ldap_requirements)
24+
ifeq ($(USE_MISC_BUILD),yes)
2625
pex \
2726
-v -o $(output_dir)/$(output_filename)$(output_file_extension) -m user_sync.app \
28-
-f wheelhouse \
27+
-f $(misc_build_location) \
2928
--disable-cache \
3029
--not-zip-safe .
3130
-$(RM) wheelhouse

RELEASE_NOTES.md

Lines changed: 16 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,31 @@
11
# Release Notes for User Sync Tool Version 2.1.1
22

3-
These notes apply to v2.1.1 of 2017-06-09.
3+
These notes apply to v2.2rc1 of 2017-06-18.
44

55
## New Features
66

7-
To address [Issue 198](https://github.com/adobe-apiplatform/user-sync.py/issues/198), we have added support for [private key encryption](https://github.com/kjur/jsrsasign/wiki/Tutorial-for-PKCS5-and-PKCS8-PEM-private-key-formats-differences) in both PKCS#5 and PKCS#8 formats, and allowed the passphrase for an encrypted private key to be stored in the platform secure credential store. See [the docs](https://adobe-apiplatform.github.io/user-sync.py/) for details on the new feature.
7+
[#52](https://github.com/adobe-apiplatform/user-sync.py/issues/235): This release runs on both Python 2 and Python 3 (2.7, 3.4, 3.5, and 3.6 to be precise)!
88

9-
## Bug Fixes
9+
[#234](https://github.com/adobe-apiplatform/user-sync.py/issues/234): There are new UMAPI configuration settings (`timeout` and `retries` in the `server` section) to control the network behavior when talking to the UMAPI server. The default timeout of 120 seconds and the default retry count of 3 are unchanged.
1010

11-
There is one fix for some obscure Unicode edge cases (that were found only by code inspection): [Issue 167](https://github.com/adobe-apiplatform/user-sync.py/issues/167).
11+
[#182](https://github.com/adobe-apiplatform/user-sync.py/issues/182): At long last, you can select users in nested groups. The new implementation also allows us to avoid fetching the entire directory when the users are only supposed to come from specific groups, as with `--users mapped` ([#129](https://github.com/adobe-apiplatform/user-sync.py/issues/129).
1212

13-
User Sync no longer crashes if a user's LDAP email address is present but empty: [Issue 201](https://github.com/adobe-apiplatform/user-sync.py/issues/201).
13+
[#236](https://github.com/adobe-apiplatform/user-sync.py/issues/236): Directory users can now be pushed directly to Adobe, rather than synchronized with a fetch of Adobe users. A new command-line argument `--strategy push` (as opposed to the default `--strategy sync`) controls this.
1414

15-
The proper packages were not present for secure credential storage on Linux platforms: [Issue 199](https://github.com/adobe-apiplatform/user-sync.py/issues/199).
15+
[#237](https://github.com/adobe-apiplatform/user-sync.py/issues/237): The default encoding for all inputs (config files, CSV files, LDAP attribute values) is now assumed to be `utf8` rather than ASCII. This is a backward-compatible change that makes it unnecessary (but still allowed) to specify `utf8` explicitly.
1616

17-
## Compatibility with Prior Versions
17+
## Bug Fixes
1818

19-
This version is fully backwards-compatible with version 2.1.
19+
This release contains bug fixes for:
20+
21+
* [#227](https://github.com/adobe-apiplatform/user-sync.py/issues/227): crashes due to bad user keys.
22+
* [#235](https://github.com/adobe-apiplatform/user-sync.py/issues/235): crash if Adobe ID user has no username or domain info.
23+
* [#233](https://github.com/adobe-apiplatform/user-sync.py/issues/233): exceptions in LDAP connections are handled gracefully, as are keyboard interrupts.
24+
25+
## Compatibility with Prior Versions
2026

21-
There are new UMAPI config file settings in this release to enable the use of encyrpted keys, see [this section of the docs](https://adobe-apiplatform.github.io/user-sync.py/en/user-manual/deployment_best_practices.html#storing-credentials-in-os-level-storage) for full details.
27+
This version is fully backwards-compatible with version 2.1.1. As mentioned above, there are new configuration settings for controlling network behavior and update strategy.
2228

2329
## Known Issues
2430

25-
On the Win64 platform, due to a change in the encryption support library used by User Sync, there are very long pathnames embedded in the released build artifact `user-sync.pex`. It will likely be necessary to set the `PEX_ROOT` environment variable on Windows (as described [in the docs here](https://adobe-apiplatform.github.io/user-sync.py/en/user-manual/setup_and_installation.html)) to be a very short path (e.g., `env:$PEX_ROOT="C:\pex"`) in order to launch User Sync successfully. We hope to avoid the need for this workaround in a future release.
31+
On the Win64 platform, there are very long pathnames embedded in the released build artifact `user-sync.pex`, which will cause problems unless you are on Windows 10 and are either running Python 3.6 or have enabled long pathnames system-wide (as described in this [Microsoft Dev Center article](https://msdn.microsoft.com/en-us/library/windows/desktop/aa365247(v=vs.85).aspx)). To work around this issue on older platforms, set the `PEX_ROOT` environment variable (as described [in the docs here](https://adobe-apiplatform.github.io/user-sync.py/en/user-manual/setup_and_installation.html)) to be a very short path (e.g., `set PEX_ROOT=C:\pex`).

docs/de/FAQ/index.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
---
22
layout: page
3-
title: Häufige gestellte Fragen zur Benutzersynchronisation
3+
title: Häufige Fragen zur Benutzersynchronisation
44
advertise: Häufige Fragen
55
lang: de
66
nav_link: Häufige Fragen
@@ -80,11 +80,11 @@ Für alle Typen von IDs (Adobe, Enterprise und Federated) unterstützt das Benut
8080

8181
### Ist das Benutzer-Synchronisationstool auf ein bestimmtes Betriebssystem ausgelegt?
8282

83-
Das Benutzer-Synchronisationstool ist ein Open-Source-Python-Projekt, das Benutzer für das gewünschte Betriebssystem erstellen können. Wir stellen Builds für die Plattformen Windows, OS X, Ubuntu und Cent OS 7 bereit.
83+
Das Benutzer-Synchronisationstool ist ein Open-Source-Python-Projekt, das Benutzer für das gewünschte Betriebssystem erstellen können. Wir stellen Builds für die Plattformen Windows, OS X, Ubuntu und CentOS 7 bereit.
8484

8585
### Wurde dies unter Python 3.5 getestet?
8686

87-
Die Benutzersynchronisation wurde erfolgreich unter Python 3.x ausgeführt. Der Großteil unserer Verwendung und der Tests erfolgte jedoch für Python 2.7. Daher stellen Sie möglicherweise Probleme fest und wir stellen nur Builds für Python 2.7 bereit. Probleme (und mögliche Behebungen) können Sie jederzeit melden auf der Open-Source-Website unter https://github.com/adobe-apiplatform/user-sync.py.
87+
Die Benutzersynchronisation wurde erfolgreich unter Python 3.x ausgeführt. Der Großteil unserer Verwendung und der Tests erfolgte jedoch für Python 2.7. Daher stellen Sie möglicherweise Probleme fest und wir stellen nur Builds für Python 2.7 bereit. Probleme (und mögliche Behebungen) können Sie jederzeit auf der Open-Source-Website unter https://github.com/adobe-apiplatform/user-sync.py melden.
8888

8989
### Wenn Änderungen in der API auftreten (z. B. ein neues Feld beim Erstellen von Benutzern), wie werden die Aktualisierungen auf das Benutzer-Synchronisationstool angewendet?
9090

@@ -98,7 +98,7 @@ Im Allgemeinen ist dies nicht der Fall. Die Benutzersynchronisation stellt ledig
9898

9999
Als Netzwerkclient erfordert die Benutzersynchronisation jedoch ausgehenden SSL-Zugriff (Port 443) über Firewalls des Kundennetzwerks, damit Verbindungen mit den Adobe-Servern hergestellt werden können. Zudem müssen Kundennetzwerke der Benutzersynchronisation (sofern derart konfiguriert) das Herstellen von Verbindungen mit dem LDAP/AD-Server des Kunden an dem Port erlauben, der in der Konfiguration des Benutzer-Synchronisationstools angegeben ist (in der Standardeinstellung Port 389).
100100

101-
### Stellt das Benutzer-Synchronisationstool einen Teil des Adobe-Angebots für EVIP-Kunden dar?
101+
### Stellt das Benutzer-Synchronisationstool einen Teil des Adobe-Angebots für E-VIP-Kunden dar?
102102

103103
Ja, alle Unternehmenskunden haben Zugriff auf die UMAPI und die Benutzersynchronisation, ungeachtet ihres Kaufprogramms (E-VIP, ETLA oder Enterprise Agreement).
104104

@@ -107,6 +107,6 @@ Ja, alle Unternehmenskunden haben Zugriff auf die UMAPI und die Benutzersynchron
107107
Python 2.7 (die Sprache, in der das Tool geschrieben ist) unterscheidet zwischen „str“ (8-Bit-Zeichenfolgen) und „unicode“ (8-Bit-Zeichenfolgen mit erzwungener UTF-8-Codierung) und im Code des Benutzer-Synchronisationstools wird durchgehend „str“ und nicht „unicode“ verwendet. Sämtliche Ausgaben des Tools sind jedoch UTF-8-codiert, und wenn die Eingaben UTF-8-codiert sind, sollten keine Probleme auftreten. Dies wurde oberflächlich getestet, wobei keine Probleme festgestellt wurden – weitere Tests sind geplant.
108108

109109
Wir planen eine Erweiterung, um die Ausführung des Tools sowohl in Python 3 als auch in Python 2 zu ermöglichen.
110-
Derzeit können wir sicher sein, dass mit Unicode keinerlei Probleme auftreten werden, da die Typen in Python 3 zusammengeführt werden. Kunden, für die dies relevant ist, sollten ihre Build-Vorgänge mit Python 3 ausführen.
110+
Derzeit können wir sicher sein, dass mit Unicode keinerlei Probleme auftreten werden, da die Typen in Python 3 zusammengeführt werden. Kunden, für die dies relevant ist, sollten einen Build für Python 3 erstellen.
111111

112112

docs/de/index.md

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -7,29 +7,30 @@ nav_order: 1
77
lang: de
88
---
99

10-
Willkommen im Dokumentationscenter für [Benutzersynchronisation von Adobe](https://github.com/adobe-apiplatform/user-sync.py)!
10+
Willkommen beim Dokumentationscenter für das [Benutzer-Synchronisationstool von Adobe](https://github.com/adobe-apiplatform/user-sync.py).
1111

12-
# Was ist die Benutzersynchronisation?
12+
# Was ist das Benutzer-Synchronisationstool?
1313

14-
Das Benutzer-Synchronisationstool ist ein Befehlszeilenwerkzeug, das Benutzer- und Gruppeninformationen aus dem Unternehmensverzeichnissystem Ihrer Organisation (z. B. einem Active Directory- oder sonstigen LDAP-System) in das Verzeichnis Ihrer Organisation in der Adobe Admin Console verschiebt.
14+
Das Benutzer-Synchronisationstool ist ein Befehlszeilenwerkzeug, das Benutzer- und Gruppeninformationen aus dem Unternehmensverzeichnissystem Ihrer Organisation (z. B. einem Active Directory- oder sonstigen LDAP-System) in das Verzeichnis Ihrer Organisation in der Adobe Admin Console überträgt.
1515

1616
Bei jeder Ausführung des Benutzer-Synchronisationstools wird nach Unterschieden zwischen den Benutzer- und Gruppeninformationen in beiden Systemen gesucht und das Adobe-Verzeichnis wird so aktualisiert, dass es die Informationen in Ihrem Verzeichnis widerspiegelt.
1717

1818
# [Einrichtungs- und Nutzungshandbuch](success-guide/index.md)
1919

20-
Für den schnellen Einstieg in die Arbeit mit dem Benutzer-Synchronisationstool empfiehlt es sich, den [Einrichtungs- und Nutzungshandbuch](success-guide/index.md) durchzulesen. Hier finden Sie schrittweise Anweisungen zum Einrichten der erforderlichen Konfigurationsdateien und zum Ausführen des Tools.
20+
Für den schnellen Einstieg in die Arbeit mit dem Benutzer-Synchronisationstool empfiehlt es sich, das [Einrichtungs- und Nutzungshandbuch](success-guide/index.md) durchzulesen. Hier finden Sie schrittweise Anweisungen zum Einrichten der erforderlichen Konfigurationsdateien und zum Ausführen des Tools.
2121

2222
# [Benutzerhandbuch](user-manual/index.md)
2323

2424
Sämtliche Einzelheiten zur Verwendung des Benutzer-Synchronisationstools, u. a. zur Einrichtung für eine Reihe unterschiedlicher typischer Verwendungsszenarien, finden Sie im [Benutzerhandbuch](user-manual/index.md). Dieses ist zugleich Ihr Ausgangspunkt für das Anpassen des Verhaltens des Benutzer-Synchronisationstools. Es enthält Anweisungen zum Erstellen benutzerdefinierter Zuordnungen zwischen Verzeichnisinformationen des Kunden und Daten auf Adobe-Seite.
2525

2626
# [Häufige Fragen](FAQ/index.md)
2727

28-
Wir haben ein Dokument mit [häufig gestellten Fragen](FAQ/index.md) zusammengestellt, in dem Sie Antworten auf viele häufig gestellte und zu erwartende Fragen finden.
28+
Wir haben ein [Dokument mit häufigen Fragen](FAQ/index.md) zusammengestellt, in dem Sie Antworten auf viele Fragen finden.
2929

3030
# Verfügbare Übersetzungen
3131

3232
* [Englisch](../en)
33-
* [Französisch](../fr)
3433
* [Deutsch](../de)
35-
* [Japanisch](../jp)
34+
* [Français](../fr)
35+
* [日本語](../jp)
36+
* [Español](../es)

docs/de/success-guide/before_you_start.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -12,15 +12,15 @@ nav_order: 110
1212

1313
## Einführung in die Benutzersynchronisation
1414

15-
Die Adobe-Benutzersynchronisation ist ein Befehlszeilentool, das Benutzer- und Gruppeninformationen aus dem Unternehmensverzeichnissystem (z. B. einem Active Directory- oder sonstigen LDAP-System) oder aus anderen Quellen in das Adobe-Benutzerverwaltungssystem verschiebt. Der Benutzersynchronisation liegt das Konzept zugrunde, dass das Unternehmensverzeichnissystem die maßgebliche Quelle für Informationen über Benutzer ist. Benutzerinformationen werden von dort in das Adobe-Benutzerverwaltungssystem verschoben. Dieser Vorgang wird durch eine Reihe von Konfigurationsdateien und Befehlszeilenoptionen für die Benutzersynchronisation gesteuert.
15+
Die Adobe-Benutzersynchronisation ist ein Befehlszeilentool, das Benutzer- und Gruppeninformationen aus dem Unternehmensverzeichnissystem (z. B. einem Active Directory- oder sonstigen LDAP-System) oder aus anderen Quellen in das Adobe-Benutzerverwaltungssystem verschiebt. Der Benutzersynchronisation liegt das Konzept zugrunde, dass das Unternehmensverzeichnissystem die maßgebliche Quelle für Informationen über Benutzer ist. Benutzerinformationen werden von dort in das Adobe-Benutzerverwaltungssystem übertragen. Dieser Vorgang wird durch eine Reihe von Konfigurationsdateien und Befehlszeilenoptionen für die Benutzersynchronisation gesteuert.
1616

1717
Bei jeder Ausführung des Tools wird nach Unterschieden zwischen den Benutzerinformationen in beiden Systemen gesucht und das Adobe-System wird so aktualisiert, dass es dem Unternehmensverzeichnis entspricht.
1818

1919
Mit der Benutzersynchronisation können Sie ein neues Adobe-Konto erstellen, wenn das Verzeichnis einen neuen Benutzer aufweist, die Kontoinformationen aktualisieren, wenn sich bestimmte Felder im Verzeichnis geändert haben, und die Mitgliedschaft in einer Produktkonfiguration oder in einer Benutzergruppe aktualisieren, um die Zuweisung von Lizenzen an Benutzer zu steuern. Sie können auch Adobe-Konten löschen, wenn Benutzer aus dem Unternehmensverzeichnis entfernt werden.
2020

2121
Mit benutzerdefinierten Verzeichnisattributen haben Sie außerdem die Kontrolle über die Werte, die in das Adobe-Konto importiert werden.
2222

23-
Die Synchronisation ist auch ohne Unternehmensverzeichnissystem möglich, es genügt auch eine einfache CSV-Datei. Diese Lösung eignet sich für kleine Unternehmen und Abteilungen, die über kein zentral verwaltetes Verzeichnissystem verfügen.
23+
Die Synchronisation ist auch ohne Unternehmensverzeichnissystem möglich, es genügt eine einfache CSV-Datei. Diese Lösung eignet sich für kleine Unternehmen und Abteilungen, die über kein zentral verwaltetes Verzeichnissystem verfügen.
2424

2525
Wenn Sie hingegen über ein großes Verzeichnis verfügen, können Sie die Benutzersynchronisation auch über Push-Benachrichtigungen bei Änderungen im Verzeichnissystem veranlassen, statt eine große Anzahl von Benutzerkonten zu vergleichen.
2626

@@ -48,14 +48,14 @@ Jede Adobe-Organisation besteht aus mehreren Benutzern. Jeder Benutzer muss eine
4848

4949
Enterprise IDs und Federated IDs müssen sich in einer Domäne befinden, die das Unternehmen beansprucht hat und deren Eigentümer es ist. Die Domäne muss für die Adobe-Organisation mit der Adobe Admin Console eingerichtet werden.
5050

51-
Wenn Sie über mehr als eine Adobe-Organisation verfügen, sollten Sie wissen, welche Domänen und Benutzer welcher Organisation angehören und wie diese Gruppen mit den Konten, die im Verzeichnissystem vorhanden sind, in Zusammenhang stehen. Entweder haben Sie eine einfache Konfiguration mit einem einzigen Verzeichnissystem und einer Adobe-Organisation. Wenn von beiden mehrere vorhanden sind, sollten Sie eine Karte anfertigen, die zeigt, welche Systeme Benutzerinformationen an welche Adobe-Organisationen senden. Möglicherweise arbeiten Sie mit mehreren Instanzen der Benutzersynchronisation, von denen jede nur für eine bestimmte Adobe-Organisation verwendet wird.
51+
Wenn Sie über mehr als eine Adobe-Organisation verfügen, sollten Sie wissen, welche Domänen und Benutzer welcher Organisation angehören und wie diese Gruppen mit den Konten, die im Verzeichnissystem vorhanden sind, in Zusammenhang stehen. Vielleicht haben Sie eine einfache Konfiguration mit einem einzigen Verzeichnissystem und einer Adobe-Organisation. Wenn von beiden mehrere vorhanden sind, sollten Sie eine Karte anfertigen, die zeigt, welche Systeme Benutzerinformationen an welche Adobe-Organisationen senden. Möglicherweise arbeiten Sie mit mehreren Instanzen der Benutzersynchronisation, von denen jede nur für eine bestimmte Adobe-Organisation verwendet wird.
5252

5353
Mit der Benutzersynchronisation können Sie Benutzer erstellen und aktualisieren sowie Lizenzen verwalten. Für die Lizenzverwaltung ist die Benutzersynchronisation optional. Die entsprechenden Funktionen sind von anderen Funktionen der Benutzersynchronisation unabhängig. Über die Adobe Admin Console oder eine andere Applikation können Sie Lizenzen manuell verwalten.
5454

5555
Zum Löschen von Konten gibt es eine Reihe von Möglichkeiten. Sie können Adobe-Konten, wenn das entsprechende Unternehmenskonto entfernt wird, sofort löschen. Wenn Sie eine andere Vorgehensweise verwenden möchten, können die Adobe-Konten allerdings auch verfügbar bleiben, bis überprüft wird, ob Assets aus diesem Konto abgerufen werden müssen. Die Benutzersynchronisation kann diese und eine Reihe anderer Löschvorgänge ausführen.
5656

5757

58-
## Die Benutzersynchronisation wird auf Ihren Systemen ausgeführt.
58+
## Die Benutzersynchronisation wird auf Ihren Systemen ausgeführt
5959
Sie benötigen einer Server, auf dem sie gehostet wird. Die Benutzersynchronisation ist eine Python-Open-Source-Applikation. Sie können ein vorkonfiguriertes Python-Paket verwenden oder einen eigenen Build erstellen.
6060

6161
## Voraussetzungen

0 commit comments

Comments
 (0)