Claude Platform Docs

Créer un émetteur de fédération

organization.federation.issuers.create(**kwargs) -> FederationIssuer
POST/v1/organizations/federation_issuers

Nécessite un jeton d'accès OAuth avec la portée org:admin, obtenu via ant auth login --scope org:admin ou une règle de workload identity federation (fédération d'identité de charge de travail) ; les clés Admin API ne sont pas acceptées. Consultez Gérer WIF avec l'Admin API.

Enregistrez un émetteur OIDC auquel Anthropic fera confiance pour la fédération d'identité de charge de travail dans votre organisation.

Le champ jwks contrôle la manière dont les clés de signature de l'émetteur sont obtenues et prend l'une des trois formes sélectionnées par type : discovery (résoudre les clés via la découverte OIDC), explicit_url (récupérer les clés depuis une URL JWKS fixe) ou inline (fournir un ensemble de clés statique). Lorsque jwks.type vaut discovery et qu'aucun discovery_base n'est défini, l'URL de l'émetteur doit être accessible publiquement via HTTPS afin qu'Anthropic puisse récupérer le document de découverte ; pour les modes explicit_url et inline, l'URL de l'émetteur est uniquement comparée à la revendication iss du JWT et n'est pas récupérée.

Parameters
issuer_url: String

The iss claim value to match against.

minLength1
name: String

Slug identifier (lowercase, digits, hyphens). Unique within the organization; a duplicate name returns 409.

minLength1
maxLength255
check_jti: bool

Whether the jwt-bearer exchange enforces JTI single-use (replay protection) for tokens from this issuer. Defaults to true. Applies only to assertions carrying a jti claim; tokens without one are accepted without single-use enforcement.

How signing keys are obtained. Defaults to OIDC discovery.

One of the following:
class JWKSDiscovery { type: :discovery, ca_cert_pem, discovery_base }

JWKS via the issuer's OIDC discovery document.

type: :discovery
ca_cert_pem: String

Optional custom CA (PEM) for TLS verification of the JWKS fetch.

maxLength8192
discovery_base: String

Set when the discovery URL differs from issuer_url.

class JWKSExplicitURL { type: :explicit_url, url, ca_cert_pem }

JWKS fetched from a fixed endpoint.

type: :explicit_url
url: String

JWKS endpoint.

minLength1
ca_cert_pem: String

Optional custom CA (PEM) for TLS verification of the JWKS fetch.

maxLength8192
class JWKSInline { type: :inline, keys }

JWKS supplied directly; no network fetch.

type: :inline
keys: Array[Hash[Symbol, untyped]]

Inline JWK objects.

minItems1
max_jwt_lifetime_seconds: Integer

Maximum allowed iat→exp spread for assertions from this issuer (1-176400 seconds, i.e. up to 49h). Defaults to 3600 (1h). Assertions must carry both iat and exp; a missing iat is rejected.

minimum1
maximum176400
Returns
class FederationIssuer { type: :federation_issuer, id, archived_at, 12 more }

Registered external OIDC identity provider.

Records an external IdP the organization trusts for the RFC 7523 jwt-bearer grant. The issuer_url must match the JWT iss claim exactly.

Créer un émetteur de fédération
require "anthropic"

anthropic = Anthropic::Client.new(api_key: "my-anthropic-api-key")

federation_issuer = anthropic.organization.federation.issuers.create(issuer_url: "x", name: "x")

puts(federation_issuer)
Returns Examples
Response 200
{
  "id": "fdis_01SDCCSbTxrXDpWc1phhtcfK",
  "archived_at": "2019-12-27T18:11:19.117Z",
  "archived_by_actor_id": "archived_by_actor_id",
  "check_jti": true,
  "created_at": "2024-10-30T23:58:27.427722Z",
  "created_by_actor_id": "created_by_actor_id",
  "issuer_url": "https://token.actions.githubusercontent.com",
  "jwks": {
    "type": "discovery",
    "ca_cert_pem": "ca_cert_pem",
    "discovery_base": "discovery_base"
  },
  "jwks_polling_disabled_at": "2019-12-27T18:11:19.117Z",
  "max_jwt_lifetime_seconds": 0,
  "name": "github-actions",
  "poll_status": {
    "consecutive_failures": 0,
    "last_fetched_at": "2019-12-27T18:11:19.117Z",
    "next_poll_at": "2019-12-27T18:11:19.117Z"
  },
  "type": "federation_issuer",
  "updated_at": "2024-10-30T23:58:27.427722Z",
  "updated_by_actor_id": "updated_by_actor_id"
}