在静止状态下收到TGT后如何从cas成功注销

问题描述 投票:0回答:1

在cas服务器上创建的TGT将卡住。寻找一种使用邮递员/ python请求注销的方法。

我将向具有SSO和CAS(用于REST查询)的NMS服务器发送身份验证请求。第一步是将发布请求发送到:https://x.x.x.x:443/cas/v1/tickets正文中包含用户名和密码,并具有grant_type = client_credentials。

然后,服务器将提供一个TGT网址以继续进行下一步(生成服务票证]

问题是,在收到TGT之后,服务器的TGT池已用完,并且每当我生成新的TGT到生成3-4个TGT之后,没有用户可以登录的点,有1个用户可以使用服务器的WebUI并且我们需要重新启动TomCat以重置TGT池。

我如何正确发送我为释放池而创建的TGT的注销请求(使用邮递员)?我的下一步将使用python而不是postman创建请求。我的请求结果:

<!DOCTYPE HTML PUBLIC \"-//IETF//DTD HTML 2.0//EN\"> <html>
<head>
    <title>201 Created</title>
</head>
<body>
    <h1>TGT Created</h1>
    <form
        action="https://x.x.x.x/cas/v1/tickets/TGT-269-XONFj15axxxxxxxxxxxxxxxI32bYERsZr9hjCIMY2b-nsdnrcp"
        method="POST">Service:<input type="text" name="service" value=""><br><input type="submit" value="Submit"></form>
</body>
</html>    

下面是我用于注销的代码,但它没有释放服务器上的TGT资源:

def deAuth(casIP,appIP):
        deAuthenticate_URL = f'https://{appIP}:8443/data/deauthenticate'
        commonLogout_URL = f'https://{appIP}:8443/data/common/logout'
        sessionLogout_URL = f'https://{casIP}:443/session-manager/logout'
        casLogout_URL = f'https://{casIP}:443/logout'
        param = {'service':'https://{appIP}:8443/pages/main'}
        deAuthenticate_r = requests.post(deAuthenticate_URL,params=param,verify=False)
        if deAuthenticate_r.status_code != 200:
                print('deAuthenticate failed!')
        commonLogout_r = requests.get(commonLogout_URL,params=param,verify=False)
        if commonLogout_r.status_code != 200:
                print('commonLogout failed!')
        sessionLogout_r = requests.get(sessionLogout_URL,params=param,verify=False)
        if sessionLogout_r.status_code != 200:
                print('sessionLogout failed!')
        casLogout_r = requests.get( casLogout_URL,params=param,verify=False)
        if casLogout_r.status_code != 200:
                print('casLogout failed!')
        print('Logout attempt is completed!')    

以上代码中的所有请求将产生200,但是TGT仍然有效。我是否还需要在注销请求中包含TGT?

预期结果将是使TGT票证无效,以便其他用户并登录到服务器的Webui。

python rest cas
1个回答
0
投票

删除/ cas / v1 / tickets / TGT-fdsjfsdfjkalfewrihfdhfaie HTTP / 1.0

以上请求是leopal中提到的解决方案

© www.soinside.com 2019 - 2024. All rights reserved.