Configures and executes access recertification campaigns in Saviynt EIC to verify user permissions, revoke excess access, and ensure SOX, SOC2, HIPAA compliance.
npx claudepluginhub killvxk/cybersecurity-skills-zhThis skill uses the workspace's default tool permissions.
访问重认证(也称为访问认证或访问审查)是一个周期性流程,由指定审查员验证用户对系统和数据的访问权限是否合适。Saviynt Enterprise Identity Cloud(EIC)通过认证活动自动化此流程——向审查员展示当前的访问分配,并收集批准/撤销/有条件认证的决策。活动可按计划触发(季度、半年)、事件驱动触发(部门调动、角色变更)或按需触发。Saviynt 提供风险评分、使用情况分析和同组分析等智能功能,帮助审查员做出明智决策。
Configure and execute access recertification campaigns in Saviynt EIC to validate user entitlements, revoke excessive access, and maintain SOX, SOC2, HIPAA compliance.
Configure and execute access recertification campaigns in Saviynt EIC to validate user entitlements, revoke excess access, and ensure SOX, SOC2, HIPAA compliance.
Executes SailPoint IdentityIQ entitlement reviews including manager certifications, targeted access reviews, role verification, SoD remediation, and automated revocation workflows. For IGA compliance and access governance.
Share bugs, ideas, or general feedback.
访问重认证(也称为访问认证或访问审查)是一个周期性流程,由指定审查员验证用户对系统和数据的访问权限是否合适。Saviynt Enterprise Identity Cloud(EIC)通过认证活动自动化此流程——向审查员展示当前的访问分配,并收集批准/撤销/有条件认证的决策。活动可按计划触发(季度、半年)、事件驱动触发(部门调动、角色变更)或按需触发。Saviynt 提供风险评分、使用情况分析和同组分析等智能功能,帮助审查员做出明智决策。
| 类型 | 范围 | 触发方式 | 认证员 |
|---|---|---|---|
| 用户经理 | 经理下属的所有访问 | 按计划(季度) | 直属经理 |
| 权限所有者 | 拥有特定权限的所有用户 | 按计划(半年) | 权限/应用所有者 |
| 应用程序 | 对特定应用程序的所有访问 | 按计划 | 应用所有者 |
| 基于角色 | 分配到特定角色的所有用户 | 按计划 | 角色所有者 |
| 基于事件 | 属性发生变更的用户 | 属性变更触发 | 新经理 |
| 微认证 | 单个用户、单个权限 | 按需 | 经理或所有者 |
| 决策 | 效果 | 使用场景 |
|---|---|---|
| 认证(批准) | 保留访问 | 访问仍然需要 |
| 撤销 | 创建访问移除工单 | 不再需要访问 |
| 有条件认证 | 有条件保留访问 | 临时需要,之后再审查 |
| 委派 | 转交给另一位认证员 | 认证员缺乏决策知识 |
| 弃权 | 不记录决策 | 存在利益冲突 |
配置 → 预览 → 活跃 → 进行中 → 已完成 → 整改
│ │ │ │ │ │
│ │ │ │ │ └── 执行撤销工单
│ │ │ │ │
│ │ │ │ └── 所有决策已收集
│ │ │ │
│ │ │ └── 认证员审查并做出决策
│ │ │
│ │ └── 活动已启动,通知已发送
│ │
│ └── 仅供验证的只读预览
│
└── 定义活动参数
在 Saviynt 管理控制台中:
| 参数 | 值 |
|---|---|
| 活动名称 | Q1 2025 经理访问审查 |
| 活动类型 | 用户经理 |
| 描述 | 所有用户访问的季度审查 |
| 认证员类型 | 经理(动态 - 用户的直属经理) |
| 次级认证员 | 应用所有者(经理不可用时的备选) |
| 截止日期 | 启动后 14 天 |
| 提醒计划 | 第 7、10、13 天 |
| 升级 | 如果第 15 天无决策则自动撤销 |
配置范围过滤器:
配置智能功能:
自定义认证员在审查期间看到的内容:
显示列:
决策选项:
批量操作:
import requests
SAVIYNT_URL = "https://tenant.saviyntcloud.com"
SAVIYNT_TOKEN = "your-api-token"
def create_certification_campaign(campaign_config):
"""创建并启动 Saviynt 认证活动。"""
headers = {
"Authorization": f"Bearer {SAVIYNT_TOKEN}",
"Content-Type": "application/json"
}
# 创建活动
response = requests.post(
f"{SAVIYNT_URL}/ECM/api/v5/createCampaign",
headers=headers,
json={
"campaignname": campaign_config["name"],
"campaigntype": campaign_config["type"],
"description": campaign_config["description"],
"certifier": campaign_config["certifier_type"],
"duedate": campaign_config["due_date"],
"reminderdays": campaign_config["reminder_days"],
"autorevoke": campaign_config.get("auto_revoke", True),
"autorevokedays": campaign_config.get("auto_revoke_days", 15),
"scope": campaign_config.get("scope", {}),
}
)
response.raise_for_status()
campaign_id = response.json().get("campaignId")
# 启动活动
launch_response = requests.post(
f"{SAVIYNT_URL}/ECM/api/v5/launchCampaign",
headers=headers,
json={"campaignId": campaign_id}
)
launch_response.raise_for_status()
return {
"campaign_id": campaign_id,
"status": "launched",
"certifications_created": launch_response.json().get("certificationCount", 0)
}
def get_campaign_status(campaign_id):
"""获取活动的当前状态和进度。"""
headers = {"Authorization": f"Bearer {SAVIYNT_TOKEN}"}
response = requests.get(
f"{SAVIYNT_URL}/ECM/api/v5/getCampaignDetails",
headers=headers,
params={"campaignId": campaign_id}
)
response.raise_for_status()
data = response.json()
return {
"campaign_id": campaign_id,
"status": data.get("status"),
"total_items": data.get("totalLineItems", 0),
"certified": data.get("certifiedCount", 0),
"revoked": data.get("revokedCount", 0),
"pending": data.get("pendingCount", 0),
"completion_rate": data.get("completionPercentage", 0),
}
跟踪认证进度并发送升级通知:
活动关闭后: