private SecuritySchemeDefinition getSecuritySchemeDefinitionByType(String type, JsonNode node) throws GenerateException { try { SecuritySchemeDefinition def = null; if (type.equals(new OAuth2Definition().getType())) { def = new OAuth2Definition(); if (node != null) { def = mapper.readValue(node.traverse(), OAuth2Definition.class); } } else if (type.equals(new BasicAuthDefinition().getType())) { def = new BasicAuthDefinition(); if (node != null) { def = mapper.readValue(node.traverse(), BasicAuthDefinition.class); } } else if (type.equals(new ApiKeyAuthDefinition().getType())) { def = new ApiKeyAuthDefinition(); if (node != null) { def = mapper.readValue(node.traverse(), ApiKeyAuthDefinition.class); } } return def; } catch (IOException e) { throw new GenerateException(e); } }
} else if (securityScheme instanceof OAuth2Definition) { OAuth2Definition oauth2Scheme = (OAuth2Definition) securityScheme; String flow = oauth2Scheme.getFlow(); paragraphBuilder.italicText(labels.getLabel(FLOW)).textLine(COLON + flow); if (isNotBlank(oauth2Scheme.getAuthorizationUrl())) { paragraphBuilder.italicText(labels.getLabel(AUTHORIZATION_URL)).textLine(COLON + oauth2Scheme.getAuthorizationUrl()); if (isNotBlank(oauth2Scheme.getTokenUrl())) { paragraphBuilder.italicText(labels.getLabel(TOKEN_URL)).textLine(COLON + oauth2Scheme.getTokenUrl()); if (oauth2Scheme.getScopes() != null && !oauth2Scheme.getScopes().isEmpty()) { StringColumn.Builder nameColumnBuilder = StringColumn.builder(StringColumnId.of(labels.getLabel(NAME_COLUMN))) .putMetaData(TableComponent.WIDTH_RATIO, "3") .putMetaData(TableComponent.HEADER_COLUMN, "true"); for (Map.Entry<String, String> scope : oauth2Scheme.getScopes().entrySet()) { nameColumnBuilder.add(scope.getKey()); descriptionColumnBuilder.add(scope.getValue());
public OAuth2Definition scope(String name, String description) { this.addScope(name, description); return this; }
io.swagger.models.auth.OAuth2Definition oAuth2Definition = new io.swagger.models.auth.OAuth2Definition(); OAuth2Definition.Flow flow = oAuth2Config.flow(); oAuth2Definition = oAuth2Definition.accessCode(oAuth2Config.authorizationUrl(), oAuth2Config.tokenUrl()); } else if (flow.equals(OAuth2Definition.Flow.APPLICATION)) { oAuth2Definition = oAuth2Definition.application(oAuth2Config.tokenUrl()); } else if (flow.equals(OAuth2Definition.Flow.IMPLICIT)) { oAuth2Definition = oAuth2Definition.implicit(oAuth2Config.authorizationUrl()); } else { oAuth2Definition = oAuth2Definition.password(oAuth2Config.tokenUrl()); oAuth2Definition.addScope(scope.name(), scope.description()); oAuth2Definition.setDescription(oAuth2Config.description()); swagger.addSecurityDefinition(oAuth2Config.key(), oAuth2Definition);
.OAUTH2SECURITY); Map<String, String> scopeMap = oAuth2Definition.getScopes(); if (scopeMap != null) { scopeMap.put(scope.getName(), scope.getDescription()); OAuth2Definition oAuth2Definition = new OAuth2Definition(); oAuth2Definition.setType("oauth2"); oAuth2Definition.setFlow("password"); oAuth2Definition.setTokenUrl(keyManagerConfigs.getTokenEndpoint()); Map<String, String> scopes = new HashMap<>(); scopes.put(scope.getName(), scope.getDescription()); oAuth2Definition.setScopes(scopes); if (securitySchemeDefinitionMap != null) { securitySchemeDefinitionMap.put(APIMgtConstants.OAUTH2SECURITY, oAuth2Definition);
@Override protected BiFunction<Swagger, ConfigurationProperty, Optional<ConfigurationProperty>> propertyValueExtractor() { return (swagger, template) -> oauthProperty(swagger, template, d -> d.getScopes().keySet().stream().collect(Collectors.joining(" "))); } },
switch (_type) { case OAUTH2: final OAuth2Definition result = new OAuth2Definition(); this.setVendorExtensions(scheme, result); String _switchResult_1 = null; result.setFlow(_switchResult_1); final Function1<SecuritySchemeParameter, Boolean> _function = (SecuritySchemeParameter it) -> { String _name = it.getName(); result.setAuthorizationUrl(_value); final Function1<SecuritySchemeParameter, Boolean> _function_1 = (SecuritySchemeParameter it) -> { String _name = it.getName(); final SecuritySchemeParameter tokenUrlSetting = IterableExtensions.<SecuritySchemeParameter>findFirst(scheme.getSettings(), _function_1); if ((tokenUrlSetting != null)) { result.setTokenUrl(tokenUrlSetting.getValue()); } else { final Function1<SecuritySchemeParameter, Boolean> _function_2 = (SecuritySchemeParameter it) -> { result.setTokenUrl(_value_1); result.addScope(it.getName(), this._zenModelHelper.getDocumentation(it)); }; scheme.getScopes().forEach(_function_3); result.setType("oauth2"); return result; case BASIC:
OAuth2Definition oAuth2Definition = new OAuth2Definition(); if(allIsSet(authorizationUrl))oAuth2Definition.setAuthorizationUrl(authorizationUrl); if(allIsSet(tokenUrl))oAuth2Definition.setTokenUrl(tokenUrl); if(allIsSet(oauth2Description))oAuth2Definition.setDescription(oauth2Description); if(allIsSet(oauth2Flow))oAuth2Definition.setFlow(oauth2Flow); if(allIsSet(oauth2Scopes))oAuth2Definition.setScopes(toScopesMaps(oauth2Scopes));
private void addSecuritySchemeToSwaggerDefinition(Swagger swagger, API api) { KeyMgtConfigurations keyMgtConfigurations = ServiceReferenceHolder.getInstance(). getAPIMConfiguration().getKeyManagerConfigs(); if ((api.getSecurityScheme() & 2) == 2) { //apikey log.debug("API security scheme : API Key Scheme"); if (swagger.getSecurityDefinitions() == null || !swagger.getSecurityDefinitions().containsKey (APIMgtConstants.SWAGGER_APIKEY)) { swagger.securityDefinition(APIMgtConstants.SWAGGER_APIKEY, new ApiKeyAuthDefinition( APIMgtConstants.SWAGGER_APIKEY, In.HEADER)); } } if ((api.getSecurityScheme() & 1) == 1) { log.debug("API security Scheme : Oauth"); OAuth2Definition oAuth2Definition = new OAuth2Definition(); oAuth2Definition = oAuth2Definition.application(keyMgtConfigurations.getTokenEndpoint()); oAuth2Definition.setScopes(Collections.emptyMap()); if (swagger.getSecurityDefinitions() == null || !swagger.getSecurityDefinitions().containsKey (APIMgtConstants.OAUTH2SECURITY)) { swagger.securityDefinition(APIMgtConstants.OAUTH2SECURITY, oAuth2Definition); } } }
OAuth2Definition oauth2 = new OAuth2Definition() .implicit(ig.getLoginEndpoint().getUrl()); if (swagger.getSecurityDefinitions() != null && swagger.getSecurityDefinitions().keySet().contains(authNickname)) { System.err.println("Warning! Authorization nickname already in use!"); oauth2.scope(scope.getScope(), scope.getDescription()); OAuth2Definition oauth2 = new OAuth2Definition() .accessCode(ac.getTokenRequestEndpoint().getUrl(), ac.getTokenEndpoint().getUrl()); if (swagger.getSecurityDefinitions() != null && swagger.getSecurityDefinitions().keySet().contains(authNickname)) { System.err.println("Warning! Authorization nickname already in use!"); oauth2.scope(scope.getScope(), scope.getDescription());
public static OAuth2Definition oAuth2() { return new OAuth2Definition(); } public static ExternalDocs externalDocs() {
if (oauthSchema.getAuthorizationUrl() != null) { authProviderBuilder.setAuthorizationUrl(oauthSchema.getAuthorizationUrl());
io.swagger.models.auth.OAuth2Definition oAuth2Definition = new io.swagger.models.auth.OAuth2Definition(); OAuth2Definition.Flow flow = oAuth2Config.flow(); oAuth2Definition = oAuth2Definition.accessCode(oAuth2Config.authorizationUrl(), oAuth2Config.tokenUrl()); } else if (flow.equals(OAuth2Definition.Flow.APPLICATION)) { oAuth2Definition = oAuth2Definition.application(oAuth2Config.tokenUrl()); } else if (flow.equals(OAuth2Definition.Flow.IMPLICIT)) { oAuth2Definition = oAuth2Definition.implicit(oAuth2Config.authorizationUrl()); } else { oAuth2Definition = oAuth2Definition.password(oAuth2Config.tokenUrl()); oAuth2Definition.addScope(scope.name(), scope.description()); oAuth2Definition.setDescription(oAuth2Config.description()); swagger.addSecurityDefinition(oAuth2Config.key(), oAuth2Definition);
.OAUTH2SECURITY); Map<String, String> scopeMap = oAuth2Definition.getScopes(); if (scopeMap != null) { scopeMap.put(scope.getName(), scope.getDescription()); OAuth2Definition oAuth2Definition = new OAuth2Definition(); oAuth2Definition.setType("oauth2"); oAuth2Definition.setFlow("password"); oAuth2Definition.setTokenUrl(keyManagerConfigs.getTokenEndpoint()); Map<String, String> scopes = new HashMap<>(); scopes.put(scope.getName(), scope.getDescription()); oAuth2Definition.setScopes(scopes); if (securitySchemeDefinitionMap != null) { securitySchemeDefinitionMap.put(APIMgtConstants.OAUTH2SECURITY, oAuth2Definition);
@Override protected BiFunction<Swagger, ConfigurationProperty, Optional<ConfigurationProperty>> propertyValueExtractor() { return (swagger, template) -> oauthProperty(swagger, template, d -> d.getScopes().keySet().stream().collect(Collectors.joining(" "))); } },
private void addSecuritySchemeToSwaggerDefinition(Swagger swagger, API api) { KeyMgtConfigurations keyMgtConfigurations = ServiceReferenceHolder.getInstance(). getAPIMConfiguration().getKeyManagerConfigs(); if ((api.getSecurityScheme() & 2) == 2) { //apikey log.debug("API security scheme : API Key Scheme"); if (swagger.getSecurityDefinitions() == null || !swagger.getSecurityDefinitions().containsKey (APIMgtConstants.SWAGGER_APIKEY)) { swagger.securityDefinition(APIMgtConstants.SWAGGER_APIKEY, new ApiKeyAuthDefinition( APIMgtConstants.SWAGGER_APIKEY, In.HEADER)); } } if ((api.getSecurityScheme() & 1) == 1) { log.debug("API security Scheme : Oauth"); OAuth2Definition oAuth2Definition = new OAuth2Definition(); oAuth2Definition = oAuth2Definition.application(keyMgtConfigurations.getTokenEndpoint()); oAuth2Definition.setScopes(Collections.emptyMap()); if (swagger.getSecurityDefinitions() == null || !swagger.getSecurityDefinitions().containsKey (APIMgtConstants.OAUTH2SECURITY)) { swagger.securityDefinition(APIMgtConstants.OAUTH2SECURITY, oAuth2Definition); } } }
if (oauthSchema.getAuthorizationUrl() != null) { authProviderBuilder.setAuthorizationUrl(oauthSchema.getAuthorizationUrl());
io.swagger.models.auth.OAuth2Definition oAuth2Definition = new io.swagger.models.auth.OAuth2Definition(); OAuth2Definition.Flow flow = oAuth2Config.flow(); oAuth2Definition = oAuth2Definition.accessCode(oAuth2Config.authorizationUrl(), oAuth2Config.tokenUrl()); } else if (flow.equals(OAuth2Definition.Flow.APPLICATION)) { oAuth2Definition = oAuth2Definition.application(oAuth2Config.tokenUrl()); } else if (flow.equals(OAuth2Definition.Flow.IMPLICIT)) { oAuth2Definition = oAuth2Definition.implicit(oAuth2Config.authorizationUrl()); } else { oAuth2Definition = oAuth2Definition.password(oAuth2Config.tokenUrl()); oAuth2Definition.addScope(scope.name(), scope.description()); oAuth2Definition.setDescription(oAuth2Config.description()); swagger.addSecurityDefinition(oAuth2Config.key(), oAuth2Definition);
String flow = oAuth2Definition.getFlow(); oAuthFlow.setAuthorizationUrl(oAuth2Definition.getAuthorizationUrl()); oAuthFlows.setImplicit(oAuthFlow); break; case "password": oAuthFlow.setTokenUrl(oAuth2Definition.getTokenUrl()); oAuthFlows.setPassword(oAuthFlow); break; case "application": oAuthFlow.setTokenUrl(oAuth2Definition.getTokenUrl()); oAuthFlows.setClientCredentials(oAuthFlow); break; case "accessCode": oAuthFlow.setAuthorizationUrl(oAuth2Definition.getAuthorizationUrl()); oAuthFlow.setTokenUrl(oAuth2Definition.getTokenUrl()); oAuthFlows.setAuthorizationCode(oAuthFlow); break; Map<String, String> oAuth2Scopes = oAuth2Definition.getScopes(); if (oAuth2Scopes != null) { oAuth2Scopes.forEach((k, v) -> scopes.addString(k, v));
@Override protected BiFunction<Swagger, ConfigurationProperty, Optional<ConfigurationProperty>> propertyValueExtractor() { return (swagger, template) -> oauthProperty(swagger, template, d -> d.getScopes().keySet().stream().collect(Collectors.joining(" "))); } },