# jwt-sso-sdk
**Repository Path**: man0sions/jwt-sso-sdk
## Basic Information
- **Project Name**: jwt-sso-sdk
- **Description**: No description available
- **Primary Language**: Unknown
- **License**: Not specified
- **Default Branch**: main
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2024-09-16
- **Last Updated**: 2024-12-07
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
JWT SSO SDK
这是一个用于实现基于 JWT 的单点登录(SSO)的 SDK,支持 PHP、Java、JavaScript、Golang 和 Python 应用程序。
功能特点:
- 支持多种编程语言:PHP、Java、JavaScript、Golang、Python
- 简单易用的 API
- 安全的 JWT 生成和验证
- 跨域单点登录支持
## 安装:
### PHP:
使用 Composer 安装:
composer require man0sions/jwt-sso-sdk
### Java:
在 pom.xml 中添加依赖:
com.gitee.man0sions
jwt-sso-sdk
1.0.0
### JavaScript:
使用 npm 安装:
npm install git+https://gitee.com/man0sions/jwt-sso-sdk.git
### Golang:
使用 go get 安装:
go get gitee.com/man0sions/jwt-sso-sdk/golang/jwtsso
### Python:
使用 pip 安装:
pip install git+https://gitee.com/man0sions/jwt-sso-sdk.git
快速开始:
```
PHP:
use JwtSsoSdk\JwtSsoSdk;
$sdk = new JwtSsoSdk('your_secret_key', 'your_issuer', 'your_audience');
$token = $sdk->generateToken($userId, $roleId, $name);
$userInfo = $sdk->validateToken($token);
```
```
Java:
import com.gitee.man0sions.jwtsso.JwtSsoSdk;
JwtSsoSdk sdk = new JwtSsoSdk("your_secret_key", "your_issuer", "your_audience");
String token = sdk.generateToken(userId, roleId, name);
Map userInfo = sdk.validateToken(token);
```
```
JavaScript:
import JwtSsoSdk from 'jwt-sso-sdk';
const sdk = new JwtSsoSdk('your_secret_key', 'your_issuer', 'your_audience');
sdk.setToken(token);
const token = sdk.getToken();
const userInfo = sdk.validateToken(token);
```
```
Golang:
import "gitee.com/man0sions/jwt-sso-sdk/golang/jwtsso"
sdk := jwtsso.NewJwtSsoSdk("your_secret_key", "your_issuer", "your_audience")
token, err := sdk.GenerateToken(userId, roleId, name)
userInfo, err := sdk.ValidateToken(token)
```
```
Python:
from jwtsso import JwtSsoSdk
sdk = JwtSsoSdk('your_secret_key', 'your_issuer', 'your_audience')
token = sdk.generate_token(user_id, role_id, name)
user_info = sdk.validate_token(token)
```
API 文档:
每种语言的 SDK 都提供以下主要方法:
- 生成 Token
- 验证 Token
- 从请求头获取 Token
具体使用方法请参考各语言 SDK 的源代码和注释。
安全注意事项:
1. 使用 HTTPS 传输 token
2. 妥善保管密钥,不要在客户端暴露
3. 定期轮换密钥
4. 实现 token 刷新机制
5. 设置合理的 token 过期时间
贡献:
欢迎提交 Issue 和 Pull Request 到 Gitee 仓库:https://gitee.com/man0sions/jwt-sso-sdk
许可证:
MIT License