@ApiOperation

上级 05279684
......@@ -34,16 +34,21 @@ import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
/**
* @author Crystal.Sea
*
*/
@Api(tags = "总认证地址文档模块")
@Controller
public class AuthorizeEndpoint extends AuthorizeBaseEndpoint{
@Autowired
AppsCasDetailsService casDetailsService;
//all single sign on url
@ApiOperation(value = "总认证地址接口", notes = "参数应用ID,分发到不同应用的认证地址",httpMethod="GET")
@RequestMapping("/authz/{id}")
public ModelAndView authorize(
HttpServletRequest request,
......
......@@ -26,6 +26,10 @@ import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
@Api(tags = "在线ticket文档模块")
@Controller
@RequestMapping(value={"/onlineticket"})
public class OnlineTicketEndpoint {
......@@ -34,6 +38,7 @@ public class OnlineTicketEndpoint {
@Qualifier("onlineTicketServices")
protected OnlineTicketServices onlineTicketServices;
@ApiOperation(value = "在线ticket验证接口", notes = "",httpMethod="GET")
@ResponseBody
@RequestMapping(value="/validate")
public String ticketValidate(
......
......@@ -39,10 +39,14 @@ import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
/**
* @author Crystal.Sea
* https://apereo.github.io/cas/6.2.x/protocol/CAS-Protocol-V2-Specification.html
*/
@Api(tags = "CAS API文档模块")
@Controller
public class Cas20AuthorizeEndpoint extends CasBaseAuthorizeEndpoint{
......@@ -163,6 +167,7 @@ INTERNAL_ERROR - an internal error occurred during ticket validation
For all error codes, it is RECOMMENDED that CAS provide a more detailed message as the body of the \<cas:authenticationFailure\> block of the XML response.
*/
@ApiOperation(value = "CAS 2.0 ticket验证接口", notes = "通过ticket获取当前登录用户信息",httpMethod="POST")
@RequestMapping("/authz/cas/serviceValidate")
@ResponseBody
public String serviceValidate(
......@@ -272,6 +277,8 @@ Response on ticket validation failure:
}
}
*/
@ApiOperation(value = "CAS 2.0 ticket代理验证接口", notes = "通过ticket获取当前登录用户信息",httpMethod="POST")
@RequestMapping("/authz/cas/proxyValidate")
@ResponseBody
public String proxy(
......
......@@ -38,15 +38,20 @@ import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
/**
* @author Crystal.Sea
* https://apereo.github.io/cas/6.2.x/protocol/CAS-Protocol-Specification.html
*/
@Api(tags = "CAS API文档模块")
@Controller
public class Cas30AuthorizeEndpoint extends CasBaseAuthorizeEndpoint{
final static Logger _logger = LoggerFactory.getLogger(Cas30AuthorizeEndpoint.class);
@ApiOperation(value = "CAS 2.0 ticket验证接口", notes = "通过ticket获取当前登录用户信息",httpMethod="POST")
@RequestMapping("/authz/cas/p3/serviceValidate")
@ResponseBody
public String serviceValidate(
......@@ -94,6 +99,7 @@ public class Cas30AuthorizeEndpoint extends CasBaseAuthorizeEndpoint{
return serviceResponseBuilder.serviceResponseBuilder();
}
@ApiOperation(value = "CAS 3.0 ticket代理验证接口", notes = "通过ticket获取当前登录用户信息",httpMethod="POST")
@RequestMapping("/authz/cas/p3/proxyValidate")
@ResponseBody
public String proxy(
......
......@@ -45,15 +45,20 @@ import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.servlet.ModelAndView;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
/**
* @author Crystal.Sea
* https://apereo.github.io/cas/6.2.x/protocol/CAS-Protocol.html
*/
@Api(tags = "CAS API文档模块")
@Controller
public class CasAuthorizeEndpoint extends CasBaseAuthorizeEndpoint{
final static Logger _logger = LoggerFactory.getLogger(CasAuthorizeEndpoint.class);
@ApiOperation(value = "CAS页面跳转service认证接口", notes = "传递参数service",httpMethod="GET")
@RequestMapping("/authz/cas/login")
public ModelAndView casLogin(
HttpServletRequest request,
......@@ -66,6 +71,7 @@ public class CasAuthorizeEndpoint extends CasBaseAuthorizeEndpoint{
}
@ApiOperation(value = "CAS页面跳转应用ID认证接口", notes = "传递参数应用ID",httpMethod="GET")
@RequestMapping("/authz/cas/{id}")
public ModelAndView authorize(
HttpServletRequest request,
......
......@@ -48,10 +48,14 @@ import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
/**
* @author Crystal.Sea
* https://apereo.github.io/cas/6.2.x/protocol/REST-Protocol.html
*/
@Api(tags = "CAS REST API文档模块")
@Controller
public class CasRestV1Endpoint extends CasBaseAuthorizeEndpoint{
final static Logger _logger = LoggerFactory.getLogger(CasRestV1Endpoint.class);
......@@ -60,7 +64,7 @@ public class CasRestV1Endpoint extends CasBaseAuthorizeEndpoint{
@Qualifier("authenticationProvider")
AbstractAuthenticationProvider authenticationProvider ;
@ApiOperation(value = "CAS REST认证接口", notes = "通过用户名密码获取TGT",httpMethod="POST")
@RequestMapping(value="/authz/cas/v1/tickets",
method=RequestMethod.POST,
consumes = MediaType.APPLICATION_FORM_URLENCODED_VALUE)
......@@ -97,6 +101,7 @@ public class CasRestV1Endpoint extends CasBaseAuthorizeEndpoint{
}
}
@ApiOperation(value = "CAS REST认证接口", notes = "通过TGT获取ST",httpMethod="POST")
@RequestMapping(value="/authz/cas/v1/tickets/{ticketGrantingTicket}",
method=RequestMethod.POST,
consumes = MediaType.APPLICATION_FORM_URLENCODED_VALUE)
......@@ -124,7 +129,7 @@ public class CasRestV1Endpoint extends CasBaseAuthorizeEndpoint{
}
return new ResponseEntity<>("", HttpStatus.BAD_REQUEST);
}
@ApiOperation(value = "CAS REST认证接口", notes = "检查TGT状态",httpMethod="GET")
@RequestMapping(value="/authz/cas/v1/tickets/{ticketGrantingTicket}",
method=RequestMethod.GET)
public ResponseEntity<String> verifyTicketGrantingTicketStatus(
......@@ -144,6 +149,7 @@ public class CasRestV1Endpoint extends CasBaseAuthorizeEndpoint{
return new ResponseEntity<>("", HttpStatus.NOT_FOUND);
}
@ApiOperation(value = "CAS REST认证接口", notes = "注销TGT状态",httpMethod="DELETE")
@RequestMapping(value="/authz/cas/v1/tickets/{ticketGrantingTicket}",
method=RequestMethod.DELETE)
public ResponseEntity<String> destroyTicketGrantingTicket(
......@@ -163,7 +169,7 @@ public class CasRestV1Endpoint extends CasBaseAuthorizeEndpoint{
return new ResponseEntity<>("", HttpStatus.NOT_FOUND);
}
@ApiOperation(value = "CAS REST认证接口", notes = "用户名密码登录接口",httpMethod="POST")
@RequestMapping(value="/authz/cas/v1/users",
method=RequestMethod.POST,
consumes = MediaType.APPLICATION_FORM_URLENCODED_VALUE)
......
......@@ -40,10 +40,14 @@ import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
/**
* @author Crystal.Sea
*
*/
@Api(tags = "Desktop接口文档模块")
@Controller
public class DesktopAuthorizeEndpoint extends AuthorizeBaseEndpoint{
final static Logger _logger = LoggerFactory.getLogger(DesktopAuthorizeEndpoint.class);
......@@ -53,6 +57,7 @@ public class DesktopAuthorizeEndpoint extends AuthorizeBaseEndpoint{
DesktopDefaultAdapter defaultDesktopAdapter=new DesktopDefaultAdapter();
@ApiOperation(value = "Desktop认证接口", notes = "传递参数应用ID",httpMethod="GET")
@RequestMapping("/authz/desktop/{id}")
public ModelAndView authorize(
HttpServletRequest request,
......
......@@ -36,14 +36,19 @@ import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
/**
* @author Crystal.Sea
*
*/
@Api(tags = "ExtendApi接口文档模块")
@Controller
public class ExtendApiAuthorizeEndpoint extends AuthorizeBaseEndpoint{
final static Logger _logger = LoggerFactory.getLogger(ExtendApiAuthorizeEndpoint.class);
@ApiOperation(value = "ExtendApi认证地址接口", notes = "参数应用ID",httpMethod="GET")
@RequestMapping("/authz/api/{id}")
public ModelAndView authorize(HttpServletRequest request,@PathVariable("id") String id){
......
......@@ -40,10 +40,14 @@ import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
/**
* @author Crystal.Sea
*
*/
@Api(tags = "FormBased接口文档模块")
@Controller
public class FormBasedAuthorizeEndpoint extends AuthorizeBaseEndpoint{
final static Logger _logger = LoggerFactory.getLogger(FormBasedAuthorizeEndpoint.class);
......@@ -53,6 +57,7 @@ public class FormBasedAuthorizeEndpoint extends AuthorizeBaseEndpoint{
FormBasedDefaultAdapter defaultFormBasedAdapter=new FormBasedDefaultAdapter();
@ApiOperation(value = "FormBased认证地址接口", notes = "参数应用ID",httpMethod="GET")
@RequestMapping("/authz/formbased/{id}")
public ModelAndView authorize(
HttpServletRequest request,
......
......@@ -43,10 +43,14 @@ import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
/**
* @author Crystal.Sea
*
*/
@Api(tags = "JWT接口文档模块")
@Controller
public class JwtAuthorizeEndpoint extends AuthorizeBaseEndpoint{
......@@ -60,6 +64,7 @@ public class JwtAuthorizeEndpoint extends AuthorizeBaseEndpoint{
@Autowired
ApplicationConfig applicationConfig;
@ApiOperation(value = "JWT认证地址接口", notes = "参数应用ID",httpMethod="GET")
@RequestMapping("/authz/jwt/{id}")
public ModelAndView authorize(
HttpServletRequest request,
......
......@@ -70,6 +70,10 @@ import org.springframework.web.servlet.view.RedirectView;
import org.springframework.web.util.UriComponents;
import org.springframework.web.util.UriComponentsBuilder;
import org.springframework.web.util.UriTemplate;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.maxkey.authz.oauth2.provider.ClientDetailsService;
/**
......@@ -89,6 +93,7 @@ import org.maxkey.authz.oauth2.provider.ClientDetailsService;
* @author Vladimir Kryachko
*
*/
@Api(tags = "OAuth v2.0 API文档模块")
@Controller
@SessionAttributes("authorizationRequest")
public class AuthorizationEndpoint extends AbstractEndpoint {
......@@ -126,6 +131,7 @@ public class AuthorizationEndpoint extends AbstractEndpoint {
this.errorPage = errorPage;
}
@ApiOperation(value = "OAuth 2.0 认证接口", notes = "传递参数client_id,response_type,redirect_uri等",httpMethod="GET")
@RequestMapping(value = "/oauth/v20/authorize", method = RequestMethod.GET)
public ModelAndView authorize(Map<String, Object> model, @RequestParam Map<String, String> parameters,
SessionStatus sessionStatus) {
......@@ -507,6 +513,7 @@ public class AuthorizationEndpoint extends AbstractEndpoint {
this.oauth2RequestValidator = oauth2RequestValidator;
}
@ApiOperation(value = "OAuth 2.0 认证接口", notes = "传递参数应用ID,自动完成跳转认证拼接",httpMethod="GET")
@RequestMapping("/authz/oauthv20/{id}")
public ModelAndView authorize(
HttpServletRequest request,
......
......@@ -47,12 +47,16 @@ import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
/**
* Controller which decodes access tokens for clients who are not able to do so (or where opaque token values are used).
*
* @author Luke Taylor
* @author Joel D'sa
*/
@Api(tags = "OAuth v2.0 API文档模块")
@Controller
public class CheckTokenEndpoint {
......@@ -76,6 +80,7 @@ public class CheckTokenEndpoint {
this.accessTokenConverter = accessTokenConverter;
}
@ApiOperation(value = "OAuth 2.0 token检查接口", notes = "传递参数token",httpMethod="POST")
@RequestMapping(value = "/oauth/v20/check_token")
@ResponseBody
public Map<String, ?> checkToken(@RequestParam("token") String value) {
......
......@@ -52,6 +52,9 @@ import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
/**
* <p>
* Endpoint for token requests as described in the OAuth2 spec. Clients post requests with a <code>grant_type</code>
......@@ -69,6 +72,7 @@ import org.springframework.web.bind.annotation.RequestParam;
* @author Dave Syer
*
*/
@Api(tags = "OAuth v2.0 API文档模块")
@Controller
public class TokenEndpoint extends AbstractEndpoint {
......@@ -84,6 +88,7 @@ public class TokenEndpoint extends AbstractEndpoint {
* @return OAuth2AccessToken Entity
* @throws HttpRequestMethodNotSupportedException
*/
@ApiOperation(value = "OAuth 2.0 获取AccessToken接口", notes = "传递参数token等",httpMethod="GET")
@RequestMapping(value = "/oauth/v20/token", method=RequestMethod.GET)
public ResponseEntity<OAuth2AccessToken> getAccessToken(@RequestParam
Map<String, String> parameters) throws HttpRequestMethodNotSupportedException {
......@@ -93,7 +98,7 @@ public class TokenEndpoint extends AbstractEndpoint {
return postAccessToken(parameters);
}
@ApiOperation(value = "OAuth 2.0 获取AccessToken接口", notes = "传递参数token等",httpMethod="POST")
@RequestMapping(value = "/oauth/v20/token", method=RequestMethod.POST)
public ResponseEntity<OAuth2AccessToken> postAccessToken(@RequestParam
Map<String, String> parameters) throws HttpRequestMethodNotSupportedException {
......
......@@ -67,8 +67,13 @@ import com.nimbusds.jwt.EncryptedJWT;
import com.nimbusds.jwt.JWT;
import com.nimbusds.jwt.JWTClaimsSet;
import com.nimbusds.jwt.JWTClaimsSet.Builder;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import com.nimbusds.jwt.SignedJWT;
@Api(tags = "OAuth v2.0 API文档模块")
@Controller
@RequestMapping(value = { "/api" })
public class UserInfoEndpoint {
......@@ -108,6 +113,7 @@ public class UserInfoEndpoint {
OAuthDefaultUserInfoAdapter defaultOAuthUserInfoAdapter=new OAuthDefaultUserInfoAdapter();
@ApiOperation(value = "OAuth 2.0 用户信息接口", notes = "传递参数access_token",httpMethod="GET")
@RequestMapping(value="/oauth/v20/me")
@ResponseBody
public String apiV20UserInfo(
......@@ -148,7 +154,7 @@ public class UserInfoEndpoint {
}
}
@ApiOperation(value = "OIDC 用户信息接口", notes = "传递Authorization参数access_token",httpMethod="GET")
@RequestMapping(value="/connect/v10/userinfo")
@ResponseBody
public String connect10aUserInfo(
......
......@@ -49,7 +49,10 @@ import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
@Api(tags = "SAML v2.0 API文档模块")
@Controller
@RequestMapping(value = { "/metadata/saml20/" })
public class MetadataEndpoint {
......@@ -72,6 +75,7 @@ public class MetadataEndpoint {
public static String IDP_METADATA_PREFIX = "Idp_Metadata_";
@ApiOperation(value = "SAML 2.0 元数据接口", notes = "参数Idp_Metadata_应用ID",httpMethod="GET")
@RequestMapping(value = "/{appid}.xml",produces = "application/xml")
@ResponseBody
public String metadata(HttpServletRequest request,
......
......@@ -40,12 +40,16 @@ import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.servlet.ModelAndView;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
/**
* idp init not need extract SAML request message
* AuthnRequestInfo use default init
* @author Crystal.Sea
*
*/
@Api(tags = "SAML v2.0 API文档模块")
@Controller
public class IdpInitEndpoint {
private final static Logger logger = LoggerFactory.getLogger(IdpInitEndpoint.class);
......@@ -81,6 +85,7 @@ public class IdpInitEndpoint {
*
*
*/
@ApiOperation(value = "SAML 2.0 IDP Init接口", notes = "传递参数应用ID",httpMethod="GET")
@RequestMapping(value = "/authz/saml20/idpinit/{appid}", method=RequestMethod.GET)
public ModelAndView authorizeIdpInit(
HttpServletRequest request,
......
......@@ -37,6 +37,10 @@ import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.servlet.ModelAndView;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
@Api(tags = "SAML v2.0 API文档模块")
@Controller
public class LogoutSamlEndpoint {
private final static Logger logger = LoggerFactory.getLogger(LogoutSamlEndpoint.class);
......@@ -49,7 +53,7 @@ public class LogoutSamlEndpoint {
@Qualifier("samlValidaotrSuite")
private SAML2ValidatorSuite validatorSuite;
@ApiOperation(value = "SAML单点注销地址接口", notes = "",httpMethod="GET")
@SuppressWarnings("rawtypes")
@RequestMapping(value = "/logout/saml", method=RequestMethod.GET)
public ModelAndView samlRedirectLogout(
......
......@@ -45,6 +45,10 @@ import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.servlet.ModelAndView;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
@Api(tags = "SAML v2.0 API文档模块")
@Controller
public class SingleSignOnEndpoint {
private final static Logger logger = LoggerFactory.getLogger(SingleSignOnEndpoint.class);
......@@ -74,6 +78,7 @@ public class SingleSignOnEndpoint {
@Autowired
private AppsSaml20DetailsService saml20DetailsService;
@ApiOperation(value = "SAML 2.0 SP Init接收接口", notes = "传递参数应用ID",httpMethod="POST")
@RequestMapping(value = "/authz/saml20/{appid}", method=RequestMethod.POST)
public ModelAndView authorizePost(
HttpServletRequest request,
......@@ -83,6 +88,7 @@ public class SingleSignOnEndpoint {
return extractSAMLRequest(extractPostBindingAdapter,appId,request);
}
@ApiOperation(value = "SAML 2.0 SP Init接收接口", notes = "传递参数应用ID",httpMethod="GET")
@RequestMapping(value = "/authz/saml20/{appid}", method=RequestMethod.GET)
public ModelAndView authorizeRedirect(
HttpServletRequest request,
......
......@@ -43,10 +43,14 @@ import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
/**
* @author Crystal.Sea
*
*/
@Api(tags = "TokenBased接口文档模块")
@Controller
public class TokenBasedAuthorizeEndpoint extends AuthorizeBaseEndpoint{
......@@ -59,6 +63,7 @@ public class TokenBasedAuthorizeEndpoint extends AuthorizeBaseEndpoint{
@Autowired
ApplicationConfig applicationConfig;
@ApiOperation(value = "TokenBased认证接口", notes = "传递参数应用ID",httpMethod="GET")
@RequestMapping("/authz/tokenbased/{id}")
public ModelAndView authorize(
HttpServletRequest request,
......
......@@ -48,6 +48,10 @@ import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.servlet.ModelAndView;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
@Api(tags = "单点注销接口文档模块")
@Controller
public class LogoutEndpoint {
......@@ -66,6 +70,7 @@ public class LogoutEndpoint {
@Qualifier("onlineTicketServices")
protected OnlineTicketServices onlineTicketServices;
@ApiOperation(value = "单点注销接口", notes = "reLoginUrl跳转地址",httpMethod="GET")
@RequestMapping(value={"/logout"})
public ModelAndView logout(
HttpServletRequest request,
......@@ -75,6 +80,7 @@ public class LogoutEndpoint {
return logoutModelAndView(request,response,"loggedout",reLoginUrl);
}
@ApiOperation(value = "登录超时接口", notes = "",httpMethod="GET")
@RequestMapping(value={"/timeout"})
public ModelAndView timeout(HttpServletRequest request, HttpServletResponse response){
return logoutModelAndView(request,response,"timeout",null);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册