Token导航 LogoToken导航TokenDH.com
开发敏感数据github未标认证来源可访问许可证需确认审计通过

sinch-authentication辛奇认证

Agent Skill

用于辅助安全审计、权限检查、凭据风险、认证流程和常见漏洞排查。它适合让 Agent 梳理敏感配置、检查依赖风险、分析鉴权逻辑或生成安全复核清单。使用时不能把工具输出直接当最终结论,涉及密钥、令牌、用户数据或生产系统时,应先确认最小权限、脱敏方式和操作边界。

总安装

1,722

周安装

69

GitHub Stars

7

下载量

558
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:sinch-authentication(辛奇认证)
来源仓库:https://github.com/sinch/skills
仓库路径:skills/sinch-authentication
安装命令:
npx skills add https://github.com/sinch/skills --skill sinch-authentication
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/sinch/skills --skill sinch-authentication

简介

sinch-authentication 用于辅助安全审计、权限检查和认证流程分析。

  • 适合梳理敏感配置、检查依赖风险或生成安全复核清单,但不能将输出直接作为最终结论。
  • 通过 npx skills add 命令从指定 GitHub 仓库安装,需结合原始 README 确认具体用法。
  • 涉及密钥、令牌或生产系统时,应先确认最小权限和操作边界,避免直接操作敏感数据。
  • 当前无原始 SKILL.md 内容可参考,实际功能以来源仓库为准。

SKILL.md

Sinch Authentication

Cross-cutting skill that covers credential setup and authentication for all Sinch APIs. Determines the correct auth model, provides curl examples, SDK init code, and troubleshooting for common auth errors.

Agent Instructions

If the user hasn't specified which Sinch product they're integrating, ask first — the auth model depends on the product. Use the decision table in Step 1 to route to the correct credentials.

Step 1: Identify the Auth Model

Determine which model applies based on the Sinch product:

Auth ModelProductsCredentials Needed
Project-scoped (Basic or OAuth2)Conversation API, Numbers, Fax, EST, 10DLC, Number Lookup, ProvisioningProject ID + Key ID + Key Secret
Application-scoped (Basic or Signed)Voice API, Verification API, In-App Calling SDKsApplication Key + Application Secret
API keyMailgunAPI Key (username is literal api)
Voice/Verification credentials are a separate credential set from project Access Keys (different dashboard pages and auth models). In multi-product SDK clients, you may provide both sets together, but do not substitute one set for the other.

Step 2: Get Credentials

  • Project-scoped: Dashboard > Settings > Access Keys → creates Key ID + Key Secret. Project ID is at the top of the dashboard.
  • Application-scoped: Dashboard > Voice > Apps or Verification > Apps → creates Application Key + Application Secret.
  • Mailgun: https://app.mailgun.com/settings/api_security

Store Key Secrets securely — they are shown only once at creation.

Load credentials into environment variables before making API calls — never embed them directly in commands or code:

# Project-scoped APIs (Conversation, Numbers, Fax, etc.)
export SINCH_PROJECT_ID="your-project-id"
export SINCH_KEY_ID="your-key-id"
export SINCH_KEY_SECRET="your-key-secret"

# Application-scoped APIs (Voice, Verification)
export SINCH_APP_KEY="your-application-key"
export SINCH_APP_SECRET="your-application-secret"

# Mailgun
export MAILGUN_API_KEY="your-mailgun-api-key"
export MAILGUN_DOMAIN="your-domain.com"

Step 3: Authenticate

Project-Scoped APIs

OAuth2 (recommended) — Exchange credentials for a bearer token:

curl -X POST \
  https://auth.sinch.com/oauth2/token \
  -u "$SINCH_KEY_ID:$SINCH_KEY_SECRET"
  -d grant_type=client_credentials \

The response JSON contains an access_token field — this is the JWT to use as the bearer token:

{ "access_token": "eyJ...", "token_type": "bearer", "expires_in": 3600 }
Do not mint your own JWT. The access_token above is issued and signed by Sinch's auth server. Locally-signed JWTs (e.g. jsonwebtoken.sign({iss: keyId}, keySecret, {algorithm: "HS256"})) will be rejected with HTTP 401 by every Sinch API. Always POST grant_type=client_credentials to the token endpoint and use the returned access_token verbatim.

Use it in subsequent requests (expires in 3600s):

curl -X GET \
  "https://numbers.api.sinch.com/v1/projects/$SINCH_PROJECT_ID/activeNumbers" \
  -H "Authorization: Bearer $SINCH_ACCESS_TOKEN"

The token endpoint https://auth.sinch.com/oauth2/token works for all project-scoped APIs, including regional ones like Conversation and Template Management. Regional aliases (us.auth.sinch.com, eu.auth.sinch.com) also exist but are not required — the global URL issues tokens valid for any region.

Basic auth (quick testing only) — Supported but not recommended for production (heavily rate-limited). Pass Key ID as username and Key Secret as password:

curl -X GET \
  "https://numbers.api.sinch.com/v1/projects/$SINCH_PROJECT_ID/activeNumbers" \
  -u "$SINCH_KEY_ID:$SINCH_KEY_SECRET"

Always prefer OAuth2 bearer tokens for production workloads — Basic auth has lower rate limits and exposes credentials in every request.

Voice, Verification & In-App Calling

Use Basic auth (prototyping) — Application Key as username, Application Secret as password:

curl -X POST \
  "https://calling.api.sinch.com/calling/v1/callouts" \
  -u "$SINCH_APP_KEY:$SINCH_APP_SECRET"

Or use HMAC Signed Requests (production) — see signing algorithm docs:

Verification API also supports Public Authentication (weak, client-side SDK only).

Mailgun

curl -X GET \
  "https://api.mailgun.net/v3/$MAILGUN_DOMAIN/messages" \
  -s --user "api:$MAILGUN_API_KEY"

SDK Installation

For SDK installation and client initialization, see the sinch-sdks skill.

Gotchas

  • OAuth2 tokens expire in 3600s. SDKs auto-refresh; for curl, re-request before expiry.
  • Regional API URLs matter for Conversation/Template APIs: The API base URL must match the region where the app was created (e.g., us.conversation.api.sinch.com, eu.conversation.api.sinch.com). The OAuth token endpoint, however, is always https://auth.sinch.com/oauth2/token.
  • Voice/Verification use application credentials, not project Access Keys. These are entirely separate credential sets from different dashboard pages.
  • Key Secrets are shown only once. If lost, create a new Access Key.
  • Never hardcode credentials — Always load Key IDs, Key Secrets, and API keys from environment variables or a secret manager. Do not embed credentials in source code, shell history, or agent instructions.
  • Basic auth is rate-limited — Use OAuth2 bearer tokens in production for higher throughput.

Troubleshooting

ErrorCauseFix
401 Unauthorized on Conversation/Numbers APIWrong credentials or expired tokenVerify Key ID from Access Keys and use the Key Secret saved at creation time; if the secret was lost, create a new Access Key and re-request an OAuth2 token. Also inspect the WWW-Authenticate response header for details (for example, invalid token, expired token, or invalid client).
401 Invalid Signature on Voice/VerificationWrong Application Key/Secret or signing errorVerify app credentials from Voice > Apps; ensure HMAC signing matches the algorithm spec
OAuth2 token works for Numbers but fails for ConversationWrong API base URL regionEnsure the API base URL matches the app's region (e.g., eu.conversation.api.sinch.com for EU apps)
403 ForbiddenKey doesn't have access to this project/productCheck Access Key scope in dashboard; ensure correct Project ID

Links

Dashboard links below require authentication and are intended for human operators. Agents should rely on public docs for procedural guidance and treat dashboard URLs as navigational references only.

Authenticated Console Links (human operators):

Public Documentation Links (agent-friendly):

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Codex

31.93%
按下载量换算178

Claude

31.39%
按下载量换算175

Cursor

20.15%
按下载量换算112

Gemini CLI

8.32%
按下载量换算46

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

通过

权限和风险

敏感数据

该 Skill 可能接触密钥、Token、环境变量或敏感配置,应进入高风险复核队列,默认不自动发布。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills