使用Syncope

本文详细介绍了Syncope的使用,包括管理员控制台的各个功能,如审计、日志、通知等,以及用户终端、命令行工具。重点讲解了RESTful服务的认证授权机制,如JWTSSOProvider,并阐述了批处理请求的格式和处理。此外,还涵盖了搜索功能、客户端库的使用以及系统管理的相关设置。
摘要由CSDN通过智能技术生成

1.管理员控制台

部署完Syncope后,访问protocol://host:port/syncope-console即可打开管理页面。比如使用docker部署如下

test@root:~$ docker ps
CONTAINER ID        IMAGE                          COMMAND                  CREATED             STATUS              PORTS                                         NAMES
890432da5eec        apache/syncope-console:2.1.8   "/sbin/startup.sh"       2 weeks ago         Up 30 hours         0.0.0.0:28080->8080/tcp                       syncope_syncope-console_1
98770264f19f        apache/syncope-enduser:2.1.8   "/sbin/startup.sh"       2 weeks ago         Up 30 hours         0.0.0.0:38080->8080/tcp                       syncope_syncope-enduser_1
0bf035b6869e        apache/syncope:2.1.8           "/sbin/startup.sh"       2 weeks ago         Up 30 hours         0.0.0.0:18080->8080/tcp                       syncope_syncope_1

可以访问http://localhost:28080/syncope-console/

1.1.页面

仪表盘
仪表盘提供了syncope全局的总揽。
在这里插入图片描述

Realm页面为管理员提供了管理域以及用户、群组和对象的能力。
在这里插入图片描述
拓扑
Totology页面提供了连接对象和外部资源之间的映射视图。
点击不同的节点时,会有不同的操作。
在这里插入图片描述
报告
Reports页面展示了一系列报告的配置。也允许管理员创建和修改报告配置。
在这里插入图片描述
配置
配置页允许管理员根据组织需要定义配置项。

Audit

审计配置

Logs

可以动态调整日志级别

Notifications

管理通知。也允许创建或编辑通知模板

Parameters

展示一系列的配置参数,比如token.expireTime、password.cipher.algorithm等。也可以添加新的参数。

Policies

管理账户、密码以及拉取政策

Roles

展示、编辑角色功能

Security Questions

用于设置一系列的安全问题共用户选择,用于用户忘记密码的情况。

批准
下图展示了自主注册的批准样例以及典型的批准流程:
批准通知
批准通知
批准申请
批准申请
批准管理
批准管理
批准表单
批准表单
审查修改
审查修改
批准修改
批准修改

拓展
拓展配置动态的报告导航菜单:每项拓展生成一页或多页页面以及多个组件。

2.用户终端

访问protocol://host:port/syncope-enduser/即可使用用户终端。
比如这里用docker部署,即可访问 http://192.168.50.113:38080/syncope-enduser/
终端用户应用提供基于web的自主注册、自主服务以及密码重置应用。
通常,组织会深度定制用户系统,不仅在外观上,而且往往在后端的实际机制上,以便最适合其流程和流程。
所以用户终端的前端采用AngularJS编写,便于拓展和定制。

3.命令行工具

4.RESTful 服务

Syncope所有的Core服务都可以同多RESTful服务访问。
基本路由:
protocol://host:port/syncope/rest/

4.1.REST认证和授权

Core 服务的认证和授权基于Spring Security。
初始化时,认证使用HTTP头部:X-Syncope-Token获取JSON Web Token用于后续的请求。
使用初始交换的Token即可基于权限认证请求。
用户可以通过X-Syncope-Entitlements头部值查看授权,通过X-Syncope-Privileges头查看权限。
SecurityContext.xml中定义了相关的安全配置。
默认可以使用HTTP Basic Authentication

JWTSSOProvider

除了可以接受和认证JWB,Syncope还提供了JWTSSOProvider接口以处理第三方生成的JWT。

4.2.REST 头部

除了常用的Accept\Contetn-Type等,Syncope支持一些额外的HTTP头部。
X-Syncope-Token:认证成功后,在响应头返回,返回值是全局唯一的JWT,用于标记认证的用户。
X-Syncope-Token的值必须在之后的请求作为标注的Bear Authorization请求头的一部分携带,用于请求的认证。
例:

curl -I -u admin:password -X POST http://localhost:9080/syncope/rest/accessTokens/login
returns

HTTP/1.1 204
X-Syncope-Token: eyJ0e..
which can then be used to make a call to the REST API

curl -I -H "Authorization: Bearer eyJ0e.." http://localhost:9080/syncope/rest/users/self

token的有效期可以通过jwt.lifetime.minutes配置。
X-Syncope-Domain:可以在请求头中携带,用于选择目标域名,如果没有则默认为Master。所有的响应中都会返回这一头部。
X-Syncope-Key and Location:创建实体(用户、群组、模型、外部资源…)时,这两个头部会分别返回,并标识新REST资源的绝对URI。
X-Application-Error-Code and X-Application-Error-Info:如果请求的操作有错,则会通过这两个头部返回错误码或错误详情。
X-Syncope-Null-Priority-Async:如果请求头中设置这个值为true,则,该请求在与未设置优先级的外部资源通信时,不会等待完成。
Prefer and Preference-Applied:某些REST终端允许通过Prefer头部请求明确的行为。当指定了Prefer头部,响应头将包含Preference-Applied,并把值设置为有效的首选项。
return-content/return-no-content:REST终端在创建、更新或删除用户、群组以及其他对象时默认在相应中返回实体信息。
如果不需要这些信息,可以设置Prefer请求头为return-no-content。
在需要避免响应非必要数据的场景中使用 Prefer: return-no-content请求头。
respond-async:Batch终端可以请求异步处理。
ETag, If-Match and If-None-Match:当响应中有用户、群组以及其他对象时,会包含ETag相应头,标记对象最后一次修改时间。
如果后续请求需要更新相同的实体,可以通过If-Match或If-None-Match头部携带ETag的值。
ETag和If-Match的组合使用可用于乐观并发。
X-Syncope-Entitlements:使用GET方法和/user/self端点交互时,会返回X-Syncope-Entitlements响应头展现当前用户所有的授权。
X-Syncope-Privileges:使用GET方法和/user/self端点交互时,会返回X-Syncope-Privileges响应头展现当前用户所有的权限。

4.3.Batch

Batch请求将多个操作组合在一个请求中。
批处理请求指 Multipart MIME v1.0 message,一种标准格式,允许在单个请求中表示多个部分,每个部分可能具有不同的内容类型(比如JSON、YAML或XML)。
批处理请求通过POST方法向/batch端点请求,通过GE

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值