OAuth-Service-Provider definieren

Der OAuth-Service-Provider wird mit einer Providerkonfigurationsdatei definiert. Sie können einen OAuth-Service-Provider definieren, indem Sie die Datei OAuthSampleConfig.xml bearbeiten.

Die Datei OauthSampleConfig.xml befindet sich im Eigenschaftsverzeichnis (properties) unter dem Verzeichnis mit der Installation von WebSphere Application Server. Sie können diese Datei kopieren und bearbeiten, um einen OAuth-Service-Provider zu definieren.

Jeder Parameter verfügt entweder über einen anpassbaren Wert, der entweder true lautet (diese Variable ist zur Änderung durch die Benutzern vorgesehen) oder false (diese Variable wird in der Regel nicht von den Benutzern aktualisiert). Anpassbare Parameter werden mit der wsadmin-Task exportOAuthProps exportiert und mit der wsadmin-Task importOAuthProps importiert. Andernfalls haben die anpassbaren Attribute keine Wirkung auf die Parameter. Sie können die anpassbaren Parameterwerte abhängig von Ihrer Umgebung aktualisieren.
Fehler vermeiden Fehler vermeiden: Der Parametertyp ws oder cc wird intern verwendet und kann beim Aktualisieren von Parameter ignoriert werden.gotcha
Tabelle 1. Aktive Parameter für speicherinterne Client- und Tokenspeicher
Parametername Wert Beschreibung Anpassbar
oauth20.client.provider.classname Klasse für Client-Provider-Implementierung Verwenden Sie für den speicherinternen Clientspeicher den Wert com.ibm.ws.security.oauth20.plugins.BaseClientProvider. False
oauth20.token.cache.classname Klasse für Token-Cache-Implementierung Verwenden Sie für den speicherinternen Tokenspeicher den Wert com.ibm.ws.security.oauth20.plugins.BaseCache. False
oauth20.token.cache.jndi.tokens JNDI-Name (Java™ Naming and Directory Interface) des dynamischen Cacheobjekts für nach ID indexierte Token. Der Standardwert ist Services/cache/OAuth20MemTokenCache. Weitere Informationen zur Verwendung des Parameters finden Sie im Abschnitt über die Konfiguration des dynamischen Caching. False
oauth20.token.cache.jndi.users JNDI-Name des dynamischen Cacheobjekts für nach Benutzern indexierte Token. Der Standardwert ist Services/cache/OAuth20MemTokenOwnerCache. Weitere Informationen zur Verwendung des Parameters finden Sie im Abschnitt über die Konfiguration des dynamischen Caching. False
Tabelle 2. Parameter für JDBC-Datenbankspeicher (Java Database Connectivity)
Parametername Wert Beschreibung Anpassbar
oauth20.client.provider.classname Klassename für Client-Provider-Implementierung Verwenden Sie für den JDBC-basierten Clientspeicher den Wert com.ibm.ws.security.oauth20.plugins.db.CachedDBClientProvider. Weitere Informationen zur Datenbankkonfiguration finden Sie im Abschnitt mit der DB-Tabelle. False
oauth20.token.cache.classname Klassenname für Token-Cache-Implementierung Verwenden Sie für den JDBC-basierten Tokenspeicher den Wert com.ibm.ws.security.oauth20.plugins.db.CachedDBTokenStore. Weitere Informationen zur Datenbankkonfiguration finden Sie im Abschnitt mit der DB-Tabelle. False
oauthjdbc.JDBCProvider JDBC-Providername Legen Sie als Wert für diesen Parameter Ihren JDBC-Provider fest, z. B. jdbc/oauthProvider. False
oauthjdbc.client.table Tabellenname für die OAuth-Clients Legen Sie als Wert für diesen Parameter Ihren Datenbanktabellennamen fest, z. B. OAuthDBSchema.OAUTH20CLIENTCONFIG. False
oauthjdbc.token.table Tabellenname für die OAuth-Token Legen Sie als Wert für diesen Parameter Ihren Datenbanktabellennamen fest, z. B. OAuthDBSchema.OAUTH20CACHE. False
oauthjdbc.CleanupInterval Bereinigungsintervall für abgelaufene Token in Sekunden Die in Sekunden angegebene Verzögerungszeit zwischen der Bereinigen abgelaufener Token in der Datenbanktokentabelle. True
oauthjdbc.LimitRefreshToken nicht verwendet nicht verwendet True
oauth20.db.token.cache.jndi.tokens JNDI-Name des dynamischen Cacheobjekts für Token Der Datenspeicher wird unterstützt von einem dynamischen Cache mit dem angegebenen Namen, z. B. services/cache/OAuth20DBTokenCache. Weitere Informationen zur Verwendung des Parameters finden Sie im Abschnitt über die Konfiguration des dynamischen Caching. False
oauth20.db.token.cache.jndi.client JNDI-Name des dynamsichen Cacheobjekts für Clients Der Datenspeicher wird unterstützt von einem dynamischen Cache mit dem angegebenen Namen, z. B. services/cache/OAuth20DBClientCache. Weitere Informationen zur Verwendung des Parameters finden Sie im Abschnitt über die Konfiguration des dynamischen Caching. False
Tabelle 3. Länge der OAuth-Zugriffszeit. Einem Client wird abhängig von seiner Berechtigungsstufe eine Zugriffszeit zugeordnet.
Parametername Wert Beschreibung Anpassbar
oauth20.max.authorization.grant.lifetime.seconds Dauer der erteilten Berechtigung in Sekunden Die in Sekunden angegebene Zeit, während der eine erteilte Berechtigung gültig ist, z. B. 604800. True
oauth20.code.lifetime.seconds Dauer des Berechtigungscodes in Sekunden Die in Sekunden angegebene Zeit, während der der Berechtigungscode für den OAuth-Dance-Authtifizierungsprozess gültig ist, z. B. 60. True
oauth20.code.length Integer Länge der generierten OAuth-Berechtigungscodes True
oauth20.token.lifetime.seconds Integer Die in Sekunden angegebene Zeit, während der das OAuth-Zugriffstoken aktiv ist. Ein Wert, der im Allgemeinen angepasst wird. True
oauth20.access.token.length Integer Länge des generierten OAuth-Zugriffstokens True
oauth20.issue.refresh.token true oder false Mit dem Wert false wird die Verwendung und Generierung von Aktualisierungstoken im OAuth-Provider inaktiviert. True
oauth20.refresh.token.length Gültig sind Werte ab 50. Der Standardwert ist 50. True
oauth20.access.tokentypehandler.classname Ein beliebiger OAuth20-Token-Handler kann angegeben werden. Der Standardwert ist com.ibm.ws.security.oauth20.plugins.BaseTokenHandler. Der Typ ist cc. False
oauth20.mediator.classnames Optionaler Klassenname des OAuth-Mediators. Weitere Informationen finden Sie im Abschnitt zum OAuth-Mediator. False
oauth20.allow.public.clients true oder false Der Wert false inaktiviert den Zugriff auf öffentliche Clients gemäß der OAuth-Spezifikation. True
oauth20.grant.types.allowed Gültige Werte: authorization_code, password, refresh_tokens, client_credentials oder implicit Liste aktivierter OAuth-Abläufe gemäß der OAuth-Spezifikation. False
oauth20.authorization.form.template Optionaler URL für die angepasste Berechtigungsschablone Wird ein angepasstes Berechtigungsformular verwendet, geben Sie die Position der Schablone an. True
oauth20.authorization.error.template Optionaler URL für die angepasste Schablone für Berechtigungsfehlerseite Wird eine angepasste Schablone für die Berechtigungsfehlerseite verwendet, geben Sie die Position der Schablone an. True
oauth20.authorization.loginURL Optionaler URL für die angepasste Anmeldeseite Wird eine angepasste Anmeldeseite verwendet, geben Sie den Anmelde-URL an. True
oauth20.audithandler.classname Klassenname für den OAuth-Prüfhandler Optionale Implementierung für erweiterte Protokollierung und Prüfung. Der Standardwert ist com.ibm.oauth.core.api.audit.XMLFileOAuthAuditHandler. True
oauth20.template.lifetime.seconds Schablonenlebensdauer in Sekunden. Die Standardeinstellung ist 600. Die Zeitdauer, während der eine Schablone im Schablonencache verbleiben soll.

oauth20.template.lifetime.seconds überschreibt jede Einstellung der vorhandenen JVM-Systemeigenschaft com.ibm.ws.security.oauth20.util.defaultTemplateLifetime .

 
oauth20.template.waitTime Schablonenwartezeit in Sekunden. Die Standardeinstellung ist 120. Die Wartezeit für das Laden einer Schablone von einem fernen Server.  
oauth20.template.connectTime Schablonenverbindungszeit in Sekunden. Die Standardeinstellung ist 120. Die Wartezeit für das Laden einer Schablone über eine Serververbindung.  
oauth20.template.readTime Schablonenlesezeit in Sekunden. Die Standardeinstellung ist 120. Die Zeitdauer, während der ein Schablonendokument von einem fernen Server gelesen werden kann.  
oauth20.template.count Schablonenanzahl. Die Standardeinstellung ist 3. Die Anzahl Schablonen, die gleichzeitig abgerufen werden.  
oauth20.grant.type.password.skip.validation true oder false, die Standardeinstellung ist false Der Wert "true" inaktiviert die Ressourceneignervalidierung für den Granttyp "password" (Kennwort).  
xmlFileAuditHandler.filename Dateiname Name der Datei, die dem Standardprüfhandler entspricht. True
Tabelle 4. Parameter für TAI-Konfiguration (Trust Association Interceptor) Diese Parameter können optional als angepasste TAI-Eigenschaften hinzugefügt werden. Dadurch wird eine größere Flexibilität erzielt. Sie können weitere angepasste TAI-Eigenschaften als Parameter hinzufügen, indem Sie type="tai" angeben.
Parametername Wert Beschreibung Anpassbar
Filter Eine beliebige Filterbedingung kann verwendet werden. Weitere Informationen finden Sie in der Beschreibung der TAI-Konfigurationsparameter und -Syntax. True
oauthOnly true oder false Eine Beispiel-TAI-Konfigurationseigenschaft, die die Authentifizierung entweder auf OAuth einschränkt (true) oder die Verwendung einer anderen aktivierten Authentifizierung zulässt (false). Weitere Informationen finden Sie in der Beschreibung der TAI-Konfigurationsparameter. True
Tabelle 5. Parameter für automatische Berechtigung (autoauthorize). Optionale Endpunktparameter und Client-Whitelist zum Überspringen des Berechtigungsschrittes für privilegierte Clients.
Parametername Wert Beschreibung Anpassbar
oauth20.autoauthorize.param Beliebige Zeichenfolge Damit die automatische Berechtigung verwendet werden kann, muss der Parameter "autoauthorize" als URL-Parameter mit dem Wert true an Anforderungen angehängt werden. False
oauth20.autoauthorize.clients Liste der registrierten Client-IDs Die Clients in dieser Liste können an der automatischen Berechtigung teilnehmen. True
Tabelle 6. Optionale Wert zum Ersetzen von Client-URI-Zeichenfolgen für dynamische Hostnamen. Die Variablen müssen die Syntax '${VAR_NAME}' verwenden.
Parametername Wert Beschreibung Anpassbar
oauth20.client.uri.substitutions nicht verwendet nicht verwendet False
Tabelle 7. Optionale Werte zur Konfiguration des Serverstandardbereichs. Werte sind durch Leerzeichen begrenzte Zeichenfolgen.
Parametername Wert Beschreibung Anpassbar
oauth20.scope.preAuthorized beliebige Zeichenfolge Eine Liste mit Geltungsbereichen, die allen Clients zugewiesen werden. True

Symbol, das den Typ des Artikels anzeigt. Konzeptartikel



Symbol für Zeitmarke Letzte Aktualisierung: 25.05.2016
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=cwbs_oauthdefineprovider
Dateiname:cwbs_oauthdefineprovider.html