当前位置: 首页>>代码示例>>Java>>正文


Java OAuthUtils.getRegisteredOAuthService方法代码示例

本文整理汇总了Java中org.jasig.cas.support.oauth.OAuthUtils.getRegisteredOAuthService方法的典型用法代码示例。如果您正苦于以下问题:Java OAuthUtils.getRegisteredOAuthService方法的具体用法?Java OAuthUtils.getRegisteredOAuthService怎么用?Java OAuthUtils.getRegisteredOAuthService使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在org.jasig.cas.support.oauth.OAuthUtils的用法示例。


在下文中一共展示了OAuthUtils.getRegisteredOAuthService方法的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: internalHandleRequest

import org.jasig.cas.support.oauth.OAuthUtils; //导入方法依赖的package包/类
@Override
protected ModelAndView internalHandleRequest(final String method, final HttpServletRequest request,
                                             final HttpServletResponse response) throws Exception {

    final String redirectUri = request.getParameter(OAuthConstants.REDIRECT_URI);
    logger.debug("{} : {}", OAuthConstants.REDIRECT_URI, redirectUri);

    final String clientId = request.getParameter(OAuthConstants.CLIENT_ID);
    logger.debug("{} : {}", OAuthConstants.CLIENT_ID, clientId);

    final String clientSecret = request.getParameter(OAuthConstants.CLIENT_SECRET);

    final String code = request.getParameter(OAuthConstants.CODE);
    logger.debug("{} : {}", OAuthConstants.CODE, code);

    final boolean isVerified = verifyAccessTokenRequest(response, redirectUri, clientId, clientSecret, code);
    if (!isVerified) {
        return OAuthUtils.writeTextError(response, OAuthConstants.INVALID_REQUEST, HttpStatus.SC_BAD_REQUEST);
    }

    final ServiceTicket serviceTicket = (ServiceTicket) ticketRegistry.getTicket(code);
    // service ticket should be valid
    if (serviceTicket == null || serviceTicket.isExpired()) {
        logger.error("Code expired : {}", code);
        return OAuthUtils.writeTextError(response, OAuthConstants.INVALID_GRANT, HttpStatus.SC_BAD_REQUEST);
    }
    final TicketGrantingTicket ticketGrantingTicket = serviceTicket.getGrantingTicket();
    // remove service ticket
    ticketRegistry.deleteTicket(serviceTicket.getId());

    final OAuthRegisteredService registeredService = OAuthUtils.getRegisteredOAuthService(this.servicesManager, clientId);
    final OAuthWebApplicationService service = new OAuthWebApplicationService(registeredService.getId());
    final String accessTokenEncoded = this.accessTokenGenerator.generate(service, ticketGrantingTicket);
    final int expires = (int) (this.timeout - TimeUnit.MILLISECONDS
            .toSeconds(System.currentTimeMillis() - ticketGrantingTicket.getCreationTime()));
    final String text = String.format("%s=%s&%s=%s", OAuthConstants.ACCESS_TOKEN, accessTokenEncoded, OAuthConstants.EXPIRES, expires);
    logger.debug("OAuth access token response: {}", text);
    response.setContentType("text/plain");
    return OAuthUtils.writeText(response, text, HttpStatus.SC_OK);
}
 
开发者ID:yuweijun,项目名称:cas-server-4.2.1,代码行数:41,代码来源:OAuth20AccessTokenController.java

示例2: internalHandleRequest

import org.jasig.cas.support.oauth.OAuthUtils; //导入方法依赖的package包/类
@Override
protected ModelAndView internalHandleRequest(final String method, final HttpServletRequest request,
                                             final HttpServletResponse response) throws Exception {

    final String redirectUri = request.getParameter(OAuthConstants.REDIRECT_URI);
    logger.debug("{} : {}", OAuthConstants.REDIRECT_URI, redirectUri);

    final String clientId = request.getParameter(OAuthConstants.CLIENT_ID);
    logger.debug("{} : {}", OAuthConstants.CLIENT_ID, clientId);

    final String clientSecret = request.getParameter(OAuthConstants.CLIENT_SECRET);

    final String code = request.getParameter(OAuthConstants.CODE);
    logger.debug("{} : {}", OAuthConstants.CODE, code);

    final boolean isVerified = verifyAccessTokenRequest(response, redirectUri, clientId, clientSecret, code);
    if (!isVerified) {
        return OAuthUtils.writeTextError(response, OAuthConstants.INVALID_REQUEST, HttpStatus.SC_BAD_REQUEST);
    }

    final ServiceTicket serviceTicket = (ServiceTicket) ticketRegistry.getTicket(code);
    // service ticket should be valid
    if (serviceTicket == null || serviceTicket.isExpired()) {
        logger.error("Code expired : {}", code);
        return OAuthUtils.writeTextError(response, OAuthConstants.INVALID_GRANT, HttpStatus.SC_BAD_REQUEST);
    }
    final TicketGrantingTicket ticketGrantingTicket = serviceTicket.getGrantingTicket();
    // remove service ticket
    ticketRegistry.deleteTicket(serviceTicket.getId());

    final OAuthRegisteredService registeredService = OAuthUtils.getRegisteredOAuthService(this.servicesManager, clientId);
    final OAuthWebApplicationService service = new OAuthWebApplicationService(registeredService.getId());
    final String accessTokenEncoded = this.accessTokenGenerator.generate(service, ticketGrantingTicket);
    final int expires = (int) (this.timeout - TimeUnit.MILLISECONDS
            .toSeconds(System.currentTimeMillis() - ticketGrantingTicket.getCreationTime()));
    final String text = String.format("%s=%s&%s=%s", OAuthConstants.ACCESS_TOKEN, 
            accessTokenEncoded, OAuthConstants.EXPIRES_IN, expires);
    logger.debug("OAuth access token response: {}", text);
    response.setContentType("text/plain");
    return OAuthUtils.writeText(response, text, HttpStatus.SC_OK);
}
 
开发者ID:hsj-xiaokang,项目名称:springboot-shiro-cas-mybatis,代码行数:42,代码来源:OAuth20AccessTokenController.java

示例3: verifyAccessTokenRequest

import org.jasig.cas.support.oauth.OAuthUtils; //导入方法依赖的package包/类
/**
 * Verify access token request by reviewing the values of
 * client id, redirect uri, client secret, code, etc.
 *
 * @param response the response
 * @param redirectUri the redirect uri
 * @param clientId the client id
 * @param clientSecret the client secret
 * @param code the code
 * @return true, if successful
 */
private boolean verifyAccessTokenRequest(final HttpServletResponse response, final String redirectUri,
                                         final String clientId, final String clientSecret, final String code) {

    // clientId is required
    if (StringUtils.isBlank(clientId)) {
        logger.error("Missing {}", OAuthConstants.CLIENT_ID);
        return false;
    }
    // redirectUri is required
    if (StringUtils.isBlank(redirectUri)) {
        logger.error("Missing {}", OAuthConstants.REDIRECT_URI);
        return false;
    }
    // clientSecret is required
    if (StringUtils.isBlank(clientSecret)) {
        logger.error("Missing {}", OAuthConstants.CLIENT_SECRET);
        return false;
    }
    // code is required
    if (StringUtils.isBlank(code)) {
        logger.error("Missing {}", OAuthConstants.CODE);
        return false;
    }

    final OAuthRegisteredService service = OAuthUtils.getRegisteredOAuthService(this.servicesManager, clientId);
    if (service == null) {
        logger.error("Unknown {} : {}", OAuthConstants.CLIENT_ID, clientId);
        return false;
    }

    final String serviceId = service.getServiceId();
    if (!redirectUri.matches(serviceId)) {
        logger.error("Unsupported {} : {} for serviceId : {}", OAuthConstants.REDIRECT_URI, redirectUri, serviceId);
        return false;
    }

    if (!StringUtils.equals(service.getClientSecret(), clientSecret)) {
        logger.error("Wrong client secret for service {}", service);
        return false;
    }
    return true;
}
 
开发者ID:hsj-xiaokang,项目名称:springboot-shiro-cas-mybatis,代码行数:54,代码来源:OAuth20AccessTokenController.java

示例4: internalHandleRequest

import org.jasig.cas.support.oauth.OAuthUtils; //导入方法依赖的package包/类
@Override
protected ModelAndView internalHandleRequest(final String method, final HttpServletRequest request,
                                             final HttpServletResponse response) throws Exception {

    final String clientId = request.getParameter(OAuthConstants.CLIENT_ID);
    logger.debug("{} : {}", OAuthConstants.CLIENT_ID, clientId);

    final String redirectUri = request.getParameter(OAuthConstants.REDIRECT_URI);
    logger.debug("{} : {}", OAuthConstants.REDIRECT_URI, redirectUri);

    final String state = request.getParameter(OAuthConstants.STATE);
    logger.debug("{} : {}", OAuthConstants.STATE, state);

    // clientId is required
    if (StringUtils.isBlank(clientId)) {
        logger.error("Missing {}", OAuthConstants.CLIENT_ID);
        return new ModelAndView(OAuthConstants.ERROR_VIEW);
    }
    // redirectUri is required
    if (StringUtils.isBlank(redirectUri)) {
        logger.error("Missing {}", OAuthConstants.REDIRECT_URI);
        return new ModelAndView(OAuthConstants.ERROR_VIEW);
    }

    final OAuthRegisteredService service = OAuthUtils.getRegisteredOAuthService(this.servicesManager, clientId);
    if (service == null) {
        logger.error("Unknown {} : {}", OAuthConstants.CLIENT_ID, clientId);
        return new ModelAndView(OAuthConstants.ERROR_VIEW);
    }

    final String serviceId = service.getServiceId();
    if (!redirectUri.matches(serviceId)) {
        logger.error("Unsupported {} : {} for serviceId : {}", OAuthConstants.REDIRECT_URI, redirectUri, serviceId);
        return new ModelAndView(OAuthConstants.ERROR_VIEW);
    }

    // keep info in session
    final HttpSession session = request.getSession();
    session.setAttribute(OAuthConstants.OAUTH20_CALLBACKURL, redirectUri);
    session.setAttribute(OAuthConstants.OAUTH20_SERVICE_NAME, service.getName());
    session.setAttribute(OAuthConstants.BYPASS_APPROVAL_PROMPT, service.isBypassApprovalPrompt());
    session.setAttribute(OAuthConstants.OAUTH20_STATE, state);

    final String callbackAuthorizeUrl = request.getRequestURL().toString()
            .replace('/' + OAuthConstants.AUTHORIZE_URL, '/' + OAuthConstants.CALLBACK_AUTHORIZE_URL);
    logger.debug("{} : {}", OAuthConstants.CALLBACK_AUTHORIZE_URL, callbackAuthorizeUrl);

    final String loginUrlWithService = OAuthUtils.addParameter(loginUrl, OAuthConstants.SERVICE,
            callbackAuthorizeUrl);
    logger.debug("loginUrlWithService : {}", loginUrlWithService);
    return OAuthUtils.redirectTo(loginUrlWithService);
}
 
开发者ID:hsj-xiaokang,项目名称:springboot-shiro-cas-mybatis,代码行数:53,代码来源:OAuth20AuthorizeController.java

示例5: verifyAccessTokenRequest

import org.jasig.cas.support.oauth.OAuthUtils; //导入方法依赖的package包/类
/**
 * Verify access token request by reviewing the values of
 * client id, redirect uri, client secret, code, etc.
 *
 * @param response the response
 * @param redirectUri the redirect uri
 * @param clientId the client id
 * @param clientSecret the client secret
 * @param code the code
 * @return true, if successful
 */
private boolean verifyAccessTokenRequest(final HttpServletResponse response, final String redirectUri,
                                         final String clientId, final String clientSecret, final String code) {

    // clientId is required
    if (StringUtils.isBlank(clientId)) {
        LOGGER.error("Missing {}", OAuthConstants.CLIENT_ID);
        return false;
    }
    // redirectUri is required
    if (StringUtils.isBlank(redirectUri)) {
        LOGGER.error("Missing {}", OAuthConstants.REDIRECT_URI);
        return false;
    }
    // clientSecret is required
    if (StringUtils.isBlank(clientSecret)) {
        LOGGER.error("Missing {}", OAuthConstants.CLIENT_SECRET);
        return false;
    }
    // code is required
    if (StringUtils.isBlank(code)) {
        LOGGER.error("Missing {}", OAuthConstants.CODE);
        return false;
    }

    final OAuthRegisteredService service = OAuthUtils.getRegisteredOAuthService(this.servicesManager, clientId);
    if (service == null) {
        LOGGER.error("Unknown {} : {}", OAuthConstants.CLIENT_ID, clientId);
        return false;
    }

    final String serviceId = service.getServiceId();
    if (!redirectUri.matches(serviceId)) {
        LOGGER.error("Unsupported {} : {} for serviceId : {}", OAuthConstants.REDIRECT_URI, redirectUri, serviceId);
        return false;
    }

    if (!StringUtils.equals(service.getClientSecret(), clientSecret)) {
        LOGGER.error("Wrong client secret for service {}", service);
        return false;
    }
    return true;
}
 
开发者ID:hsj-xiaokang,项目名称:springboot-shiro-cas-mybatis,代码行数:54,代码来源:OAuth20AccessTokenController.java

示例6: handleRequestInternal

import org.jasig.cas.support.oauth.OAuthUtils; //导入方法依赖的package包/类
@Override
protected ModelAndView handleRequestInternal(final HttpServletRequest request, final HttpServletResponse response)
        throws Exception {

    final String clientId = request.getParameter(OAuthConstants.CLIENT_ID);
    LOGGER.debug("{} : {}", OAuthConstants.CLIENT_ID, clientId);

    final String redirectUri = request.getParameter(OAuthConstants.REDIRECT_URI);
    LOGGER.debug("{} : {}", OAuthConstants.REDIRECT_URI, redirectUri);

    final String state = request.getParameter(OAuthConstants.STATE);
    LOGGER.debug("{} : {}", OAuthConstants.STATE, state);

    // clientId is required
    if (StringUtils.isBlank(clientId)) {
        LOGGER.error("Missing {}", OAuthConstants.CLIENT_ID);
        return new ModelAndView(OAuthConstants.ERROR_VIEW);
    }
    // redirectUri is required
    if (StringUtils.isBlank(redirectUri)) {
        LOGGER.error("Missing {}", OAuthConstants.REDIRECT_URI);
        return new ModelAndView(OAuthConstants.ERROR_VIEW);
    }

    final OAuthRegisteredService service = OAuthUtils.getRegisteredOAuthService(this.servicesManager, clientId);
    if (service == null) {
        LOGGER.error("Unknown {} : {}", OAuthConstants.CLIENT_ID, clientId);
        return new ModelAndView(OAuthConstants.ERROR_VIEW);
    }

    final String serviceId = service.getServiceId();
    if (!redirectUri.matches(serviceId)) {
        LOGGER.error("Unsupported {} : {} for serviceId : {}", OAuthConstants.REDIRECT_URI, redirectUri, serviceId);
        return new ModelAndView(OAuthConstants.ERROR_VIEW);
    }

    // keep info in session
    final HttpSession session = request.getSession();
    session.setAttribute(OAuthConstants.OAUTH20_CALLBACKURL, redirectUri);
    session.setAttribute(OAuthConstants.OAUTH20_SERVICE_NAME, service.getName());
    session.setAttribute(OAuthConstants.BYPASS_APPROVAL_PROMPT, service.isBypassApprovalPrompt());
    session.setAttribute(OAuthConstants.OAUTH20_STATE, state);

    final String callbackAuthorizeUrl = request.getRequestURL().toString()
            .replace("/" + OAuthConstants.AUTHORIZE_URL, "/" + OAuthConstants.CALLBACK_AUTHORIZE_URL);
    LOGGER.debug("{} : {}", OAuthConstants.CALLBACK_AUTHORIZE_URL, callbackAuthorizeUrl);

    final String loginUrlWithService = OAuthUtils.addParameter(loginUrl, OAuthConstants.SERVICE,
            callbackAuthorizeUrl);
    LOGGER.debug("loginUrlWithService : {}", loginUrlWithService);
    return OAuthUtils.redirectTo(loginUrlWithService);
}
 
开发者ID:hsj-xiaokang,项目名称:springboot-shiro-cas-mybatis,代码行数:53,代码来源:OAuth20AuthorizeController.java

示例7: verifyAccessTokenRequest

import org.jasig.cas.support.oauth.OAuthUtils; //导入方法依赖的package包/类
private boolean verifyAccessTokenRequest(final HttpServletResponse response, final String redirectUri,
                                         final String clientId, final String clientSecret, final String code) {

    // clientId is required
    if (StringUtils.isBlank(clientId)) {
        LOGGER.error("Missing {}", OAuthConstants.CLIENT_ID);
        return false;
    }
    // redirectUri is required
    if (StringUtils.isBlank(redirectUri)) {
        LOGGER.error("Missing {}", OAuthConstants.REDIRECT_URI);
        return false;
    }
    // clientSecret is required
    if (StringUtils.isBlank(clientSecret)) {
        LOGGER.error("Missing {}", OAuthConstants.CLIENT_SECRET);
        return false;
    }
    // code is required
    if (StringUtils.isBlank(code)) {
        LOGGER.error("Missing {}", OAuthConstants.CODE);
        return false;
    }

    final OAuthRegisteredService service = OAuthUtils.getRegisteredOAuthService(this.servicesManager, clientId);
    if (service == null) {
        LOGGER.error("Unknown {} : {}", OAuthConstants.CLIENT_ID, clientId);
        return false;
    }

    final String serviceId = service.getServiceId();
    if (!redirectUri.matches(serviceId)) {
        LOGGER.error("Unsupported {} : {} for serviceId : {}", OAuthConstants.REDIRECT_URI, redirectUri, serviceId);
        return false;
    }

    if (!StringUtils.equals(service.getClientSecret(), clientSecret)) {
        LOGGER.error("Wrong client secret for service {}", service);
        return false;
    }
    return true;
}
 
开发者ID:luotuo,项目名称:cas4.0.x-server-wechat,代码行数:43,代码来源:OAuth20AccessTokenController.java

示例8: handleRequestInternal

import org.jasig.cas.support.oauth.OAuthUtils; //导入方法依赖的package包/类
@Override
protected ModelAndView handleRequestInternal(final HttpServletRequest request, final HttpServletResponse response)
        throws Exception {

    final String clientId = request.getParameter(OAuthConstants.CLIENT_ID);
    LOGGER.debug("{} : {}", OAuthConstants.CLIENT_ID, clientId);

    final String redirectUri = request.getParameter(OAuthConstants.REDIRECT_URI);
    LOGGER.debug("{} : {}", OAuthConstants.REDIRECT_URI, redirectUri);

    final String state = request.getParameter(OAuthConstants.STATE);
    LOGGER.debug("{} : {}", OAuthConstants.STATE, state);

    // clientId is required
    if (StringUtils.isBlank(clientId)) {
        LOGGER.error("Missing {}", OAuthConstants.CLIENT_ID);
        return new ModelAndView(OAuthConstants.ERROR_VIEW);
    }
    // redirectUri is required
    if (StringUtils.isBlank(redirectUri)) {
        LOGGER.error("Missing {}", OAuthConstants.REDIRECT_URI);
        return new ModelAndView(OAuthConstants.ERROR_VIEW);
    }

    final OAuthRegisteredService service = OAuthUtils.getRegisteredOAuthService(this.servicesManager, clientId);
    if (service == null) {
        LOGGER.error("Unknown {} : {}", OAuthConstants.CLIENT_ID, clientId);
        return new ModelAndView(OAuthConstants.ERROR_VIEW);
    }

    final String serviceId = service.getServiceId();
    if (!redirectUri.matches(serviceId)) {
        LOGGER.error("Unsupported {} : {} for serviceId : {}", OAuthConstants.REDIRECT_URI, redirectUri, serviceId);
        return new ModelAndView(OAuthConstants.ERROR_VIEW);
    }

    // keep info in session
    final HttpSession session = request.getSession();
    session.setAttribute(OAuthConstants.OAUTH20_CALLBACKURL, redirectUri);
    session.setAttribute(OAuthConstants.OAUTH20_SERVICE_NAME, service.getName());
    session.setAttribute(OAuthConstants.OAUTH20_STATE, state);

    final String callbackAuthorizeUrl = request.getRequestURL().toString()
            .replace("/" + OAuthConstants.AUTHORIZE_URL, "/" + OAuthConstants.CALLBACK_AUTHORIZE_URL);
    LOGGER.debug("{} : {}", OAuthConstants.CALLBACK_AUTHORIZE_URL, callbackAuthorizeUrl);

    final String loginUrlWithService = OAuthUtils.addParameter(loginUrl, OAuthConstants.SERVICE,
            callbackAuthorizeUrl);
    LOGGER.debug("loginUrlWithService : {}", loginUrlWithService);
    return OAuthUtils.redirectTo(loginUrlWithService);
}
 
开发者ID:luotuo,项目名称:cas4.0.x-server-wechat,代码行数:52,代码来源:OAuth20AuthorizeController.java


注:本文中的org.jasig.cas.support.oauth.OAuthUtils.getRegisteredOAuthService方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。