Federation-Regel aktualisieren
Erfordert ein OAuth-Zugriffstoken mit dem Scope org:admin, über ant auth login --scope org:admin oder eine Workload-Identity-Federation-Regel; Admin-API-Keys werden nicht akzeptiert. Siehe WIF mit der Admin API verwalten.
Aktualisiert eine Federation-Regel teilweise.
issuer_id ist unveränderlich. match und target werden beim Setzen als ganze
Objekte ersetzt. Referenzierte Service-Accounts und Workspaces müssen in deiner
Organisation existieren; ungültige Referenzen werden mit einem 400-Fehler abgelehnt.
Archivierte Regeln können nicht aktualisiert werden; dies gibt 400 zurück. Erstelle stattdessen
eine neue Regel. Regeln für bekannte gemeinsam genutzte Issuer (GitHub Actions, GitLab,
Buildkite, Terraform Cloud, Google) müssen die Tenant-Identität über
einen identitätstragenden Claim, ein Tenant-fixierendes Subject-Präfix (wie
repo:YOUR_ORG/...) oder eine CEL-Bedingung einschränken, die auf einen dieser
Identitäts-Claims verweist (z. B. claims.repository_owner). Bei diesen Issuern wird die
Anforderung bei jeder Aktualisierung erneut geprüft; wenn das gespeicherte Match einer bestehenden Regel
die Tenant-Identität noch nicht einschränkt, muss jede Aktualisierung (selbst eine Umbenennung
oder Änderung der Beschreibung) in derselben Anfrage auch ein konformes match
mitliefern. OAuth-Aufrufer dürfen nur Regeln verwalten, deren oauth_scope
workspace:developer oder workspace:inference ist; andere Scopes erfordern eine
Console-Sitzung.
Parameters
Returns
import os
from anthropic import Anthropic
client = Anthropic(
api_key=os.environ.get(
"ANTHROPIC_API_KEY"
), # This is the default and can be omitted
)
federation_rule = client.organization.federation.rules.update(
federation_rule_id="federation_rule_id",
)
print(federation_rule.id){
"id": "fdrl_01SDCCSbTxrXDpWc1phhtcfK",
"applies_to_all_workspaces": true,
"archived_at": "2019-12-27T18:11:19.117Z",
"archived_by_actor_id": "archived_by_actor_id",
"attributes": {
"foo": "string"
},
"created_at": "2024-10-30T23:58:27.427722Z",
"created_by_actor_id": "created_by_actor_id",
"description": "description",
"issuer_id": "issuer_id",
"issuer_name": "issuer_name",
"match": {
"audience": "audience",
"claims": {
"foo": "string"
},
"condition": "condition",
"subject_prefix": "subject_prefix"
},
"name": "prod-deploy-pipeline",
"oauth_scope": "oauth_scope",
"target": {
"service_account_id": "svac_01SDCCSbTxrXDpWc1phhtcfK",
"type": "service_account",
"service_account_name": "service_account_name"
},
"token_lifetime_seconds": 0,
"type": "federation_rule",
"updated_at": "2024-10-30T23:58:27.427722Z",
"updated_by_actor_id": "updated_by_actor_id",
"workspace_id": "workspace_id",
"workspace_ids": [
"string"
]
}Returns Examples
{
"id": "fdrl_01SDCCSbTxrXDpWc1phhtcfK",
"applies_to_all_workspaces": true,
"archived_at": "2019-12-27T18:11:19.117Z",
"archived_by_actor_id": "archived_by_actor_id",
"attributes": {
"foo": "string"
},
"created_at": "2024-10-30T23:58:27.427722Z",
"created_by_actor_id": "created_by_actor_id",
"description": "description",
"issuer_id": "issuer_id",
"issuer_name": "issuer_name",
"match": {
"audience": "audience",
"claims": {
"foo": "string"
},
"condition": "condition",
"subject_prefix": "subject_prefix"
},
"name": "prod-deploy-pipeline",
"oauth_scope": "oauth_scope",
"target": {
"service_account_id": "svac_01SDCCSbTxrXDpWc1phhtcfK",
"type": "service_account",
"service_account_name": "service_account_name"
},
"token_lifetime_seconds": 0,
"type": "federation_rule",
"updated_at": "2024-10-30T23:58:27.427722Z",
"updated_by_actor_id": "updated_by_actor_id",
"workspace_id": "workspace_id",
"workspace_ids": [
"string"
]
}