Namespace: microsoft.graph
Wichtig
Die APIs unter der /beta Version in Microsoft Graph können sich ändern. Die Verwendung dieser APIs in Produktionsanwendungen wird nicht unterstützt. Um festzustellen, ob eine API in v1.0 verfügbar ist, verwenden Sie die Version Selektor.
Erstellen Sie ein neues trustFrameworkKeySet.Create a new trustFrameworkKeySet. Die ID des trustFrameworkKeySet wird in der Erstellungsanforderung erwartet. sie kann jedoch vom Dienst geändert werden. Die geänderte ID ist in der Antwort und im Location-Header verfügbar.
Diese API ist in den folgenden nationalen Cloudbereitstellungen verfügbar.
| Weltweiter Service |
US Government L4 |
US Government L5 (DOD) |
China, betrieben von 21Vianet |
| ✅ |
✅ |
✅ |
✅ |
Berechtigungen
Wählen Sie die Berechtigungen aus, die für diese API als am wenigsten privilegiert markiert sind. Verwenden Sie eine höhere Berechtigung oder Berechtigungen nur, wenn Ihre App dies erfordert. Ausführliche Informationen zu delegierten Berechtigungen und Anwendungsberechtigungen finden Sie unter Berechtigungstypen. Weitere Informationen zu diesen Berechtigungen finden Sie in der Berechtigungsreferenz.
| Berechtigungstyp |
Berechtigungen mit den geringsten Berechtigungen |
Berechtigungen mit höheren Berechtigungen |
| Delegiert (Geschäfts-, Schul- oder Unikonto) |
TrustFrameworkKeySet.ReadWrite.All |
Nicht verfügbar. |
| Delegiert (persönliches Microsoft-Konto) |
Nicht unterstützt |
Nicht unterstützt |
| Application |
TrustFrameworkKeySet.ReadWrite.All |
Nicht verfügbar. |
Wichtig
In delegierten Szenarien mit Geschäfts-, Schul- oder Unikonten muss dem Administrator eine unterstützte Microsoft Entra Rolle oder eine benutzerdefinierte Rolle mit einer unterstützten Rollenberechtigung zugewiesen werden.
B2C IEF Keyset Administrator ist die Rolle mit den geringsten Berechtigungen, die für diesen Vorgang unterstützt wird.
HTTP-Anforderung
POST /trustFramework/keySets
Anforderungstext
Geben Sie im Anforderungstext eine JSON-Darstellung eines trustFrameworkKeySet-Objekts an.
Antwort
Bei erfolgreicher Ausführung gibt die Methode einen 201 Created Antwortcode, einen Speicherortheader für das neu erstellte Objekt und ein neues trustFrameworkKeySet-Objekt im Antworttext zurück.
Beispiele
Beispiel 1: Erstellen eines leeren Keysets
Dies ist einer der nützlichsten Vorgänge. Zunächst erstellen Sie ein leeres Keyset. Anschließend können Sie im neuen Keyset einen Schlüssel generieren, ein manuelles Geheimnis hochladen und ein Zertifikat oder einen PKCS12-Schlüssel hochladen.
Anforderung
Das folgende Beispiel zeigt die Antwort.
POST https://graph.microsoft.com/beta/trustFramework/keySets
Content-type: application/json
{
"id": "keyset1"
}
// Code snippets are only available for the latest version. Current version is 5.x
// Dependencies
using Microsoft.Graph.Beta.Models;
var requestBody = new TrustFrameworkKeySet
{
Id = "keyset1",
Keys = new List<TrustFrameworkKey>
{
new TrustFrameworkKey
{
K = "k-value",
X5c = new List<string>
{
"x5c-value",
},
X5t = "x5t-value",
Kty = "kty-value",
Use = "use-value",
Exp = 99L,
Nbf = 99L,
Kid = "kid-value",
E = "e-value",
N = "n-value",
D = "d-value",
P = "p-value",
Q = "q-value",
Dp = "dp-value",
Dq = "dq-value",
Qi = "qi-value",
},
},
};
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
var result = await graphClient.TrustFramework.KeySets.PostAsync(requestBody);
// Code snippets are only available for the latest major version. Current major version is $v0.*
// Dependencies
import (
"context"
msgraphsdk "github.com/microsoftgraph/msgraph-beta-sdk-go"
graphmodels "github.com/microsoftgraph/msgraph-beta-sdk-go/models"
//other-imports
)
requestBody := graphmodels.NewTrustFrameworkKeySet()
id := "keyset1"
requestBody.SetId(&id)
trustFrameworkKey := graphmodels.NewTrustFrameworkKey()
k := "k-value"
trustFrameworkKey.SetK(&k)
x5c := []string {
"x5c-value",
}
trustFrameworkKey.SetX5c(x5c)
x5t := "x5t-value"
trustFrameworkKey.SetX5t(&x5t)
kty := "kty-value"
trustFrameworkKey.SetKty(&kty)
use := "use-value"
trustFrameworkKey.SetUse(&use)
exp := int64(99)
trustFrameworkKey.SetExp(&exp)
nbf := int64(99)
trustFrameworkKey.SetNbf(&nbf)
kid := "kid-value"
trustFrameworkKey.SetKid(&kid)
e := "e-value"
trustFrameworkKey.SetE(&e)
n := "n-value"
trustFrameworkKey.SetN(&n)
d := "d-value"
trustFrameworkKey.SetD(&d)
p := "p-value"
trustFrameworkKey.SetP(&p)
q := "q-value"
trustFrameworkKey.SetQ(&q)
dp := "dp-value"
trustFrameworkKey.SetDp(&dp)
dq := "dq-value"
trustFrameworkKey.SetDq(&dq)
qi := "qi-value"
trustFrameworkKey.SetQi(&qi)
keys := []graphmodels.TrustFrameworkKeyable {
trustFrameworkKey,
}
requestBody.SetKeys(keys)
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=go
keySets, err := graphClient.TrustFramework().KeySets().Post(context.Background(), requestBody, nil)
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
TrustFrameworkKeySet trustFrameworkKeySet = new TrustFrameworkKeySet();
trustFrameworkKeySet.setId("keyset1");
LinkedList<TrustFrameworkKey> keys = new LinkedList<TrustFrameworkKey>();
TrustFrameworkKey trustFrameworkKey = new TrustFrameworkKey();
trustFrameworkKey.setK("k-value");
LinkedList<String> x5c = new LinkedList<String>();
x5c.add("x5c-value");
trustFrameworkKey.setX5c(x5c);
trustFrameworkKey.setX5t("x5t-value");
trustFrameworkKey.setKty("kty-value");
trustFrameworkKey.setUse("use-value");
trustFrameworkKey.setExp(99L);
trustFrameworkKey.setNbf(99L);
trustFrameworkKey.setKid("kid-value");
trustFrameworkKey.setE("e-value");
trustFrameworkKey.setN("n-value");
trustFrameworkKey.setD("d-value");
trustFrameworkKey.setP("p-value");
trustFrameworkKey.setQ("q-value");
trustFrameworkKey.setDp("dp-value");
trustFrameworkKey.setDq("dq-value");
trustFrameworkKey.setQi("qi-value");
keys.add(trustFrameworkKey);
trustFrameworkKeySet.setKeys(keys);
TrustFrameworkKeySet result = graphClient.trustFramework().keySets().post(trustFrameworkKeySet);
const options = {
authProvider,
};
const client = Client.init(options);
const trustFrameworkKeySet = {
id: 'keyset1',
keys: [
{
k: 'k-value',
x5c: [
'x5c-value'
],
x5t: 'x5t-value',
kty: 'kty-value',
use: 'use-value',
exp: 99,
nbf: 99,
kid: 'kid-value',
e: 'e-value',
n: 'n-value',
d: 'd-value',
p: 'p-value',
q: 'q-value',
dp: 'dp-value',
dq: 'dq-value',
qi: 'qi-value'
}
]
};
await client.api('/trustFramework/keySets')
.version('beta')
.post(trustFrameworkKeySet);
<?php
use Microsoft\Graph\Beta\GraphServiceClient;
use Microsoft\Graph\Beta\Generated\Models\TrustFrameworkKeySet;
use Microsoft\Graph\Beta\Generated\Models\TrustFrameworkKey;
$graphServiceClient = new GraphServiceClient($tokenRequestContext, $scopes);
$requestBody = new TrustFrameworkKeySet();
$requestBody->setId('keyset1');
$keysTrustFrameworkKey1 = new TrustFrameworkKey();
$keysTrustFrameworkKey1->setK('k-value');
$keysTrustFrameworkKey1->setX5c(['x5c-value', ]);
$keysTrustFrameworkKey1->setX5t('x5t-value');
$keysTrustFrameworkKey1->setKty('kty-value');
$keysTrustFrameworkKey1->setEscapedUse('use-value');
$keysTrustFrameworkKey1->setExp(99);
$keysTrustFrameworkKey1->setNbf(99);
$keysTrustFrameworkKey1->setKid('kid-value');
$keysTrustFrameworkKey1->setE('e-value');
$keysTrustFrameworkKey1->setN('n-value');
$keysTrustFrameworkKey1->setD('d-value');
$keysTrustFrameworkKey1->setP('p-value');
$keysTrustFrameworkKey1->setQ('q-value');
$keysTrustFrameworkKey1->setDp('dp-value');
$keysTrustFrameworkKey1->setDq('dq-value');
$keysTrustFrameworkKey1->setQi('qi-value');
$keysArray []= $keysTrustFrameworkKey1;
$requestBody->setKeys($keysArray);
$result = $graphServiceClient->trustFramework()->keySets()->post($requestBody)->wait();
Import-Module Microsoft.Graph.Beta.Identity.SignIns
$params = @{
id = "keyset1"
keys = @(
@{
k = "k-value"
x5c = @(
"x5c-value"
)
x5t = "x5t-value"
kty = "kty-value"
use = "use-value"
exp = 99
nbf = 99
kid = "kid-value"
e = "e-value"
n = "n-value"
d = "d-value"
p = "p-value"
q = "q-value"
dp = "dp-value"
dq = "dq-value"
qi = "qi-value"
}
)
}
New-MgBetaTrustFrameworkKeySet -BodyParameter $params
# Code snippets are only available for the latest version. Current version is 1.x
from msgraph_beta import GraphServiceClient
from msgraph_beta.generated.models.trust_framework_key_set import TrustFrameworkKeySet
from msgraph_beta.generated.models.trust_framework_key import TrustFrameworkKey
# To initialize your graph_client, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
request_body = TrustFrameworkKeySet(
id = "keyset1",
keys = [
TrustFrameworkKey(
k = "k-value",
x5c = [
"x5c-value",
],
x5t = "x5t-value",
kty = "kty-value",
use = "use-value",
exp = 99,
nbf = 99,
kid = "kid-value",
e = "e-value",
n = "n-value",
d = "d-value",
p = "p-value",
q = "q-value",
dp = "dp-value",
dq = "dq-value",
qi = "qi-value",
),
],
)
result = await graph_client.trust_framework.key_sets.post(request_body)
Antwort
Das folgende Beispiel zeigt die Antwort.
Hinweis: Das hier gezeigte Antwortobjekt kann zur besseren Lesbarkeit gekürzt werden.
HTTP/1.1 201 Created
Content-type: application/json
Location: /trustFramework/keySets('B2C_1A_keyset1')
{
"id": "B2C_1A_keyset1",
"keys": []
}
Beispiel 2: Erstellen eines Keysets mit einem Schlüssel
Dies ist ein erweitertes Szenario, in dem Sie das RFC 7517-kompatible JSON-Webschlüsselformat des Schlüssels kennen müssen.
Anforderung
Das folgende Beispiel zeigt die Antwort.
POST https://graph.microsoft.com/beta/trustFramework/keySets
Content-type: application/json
{
"id": "keyset1",
"keys": [
{
"k": "k-value",
"x5c": [
"x5c-value"
],
"x5t": "x5t-value",
"kty": "kty-value",
"use": "use-value",
"exp": 99,
"nbf": 99,
"kid": "kid-value",
"e": "e-value",
"n": "n-value",
"d": "d-value",
"p": "p-value",
"q": "q-value",
"dp": "dp-value",
"dq": "dq-value",
"qi": "qi-value"
}
]
}
Antwort
Das folgende Beispiel zeigt die Antwort.
Hinweis: Das hier gezeigte Antwortobjekt kann zur besseren Lesbarkeit gekürzt werden.
HTTP/1.1 201 Created
Content-type: application/json
Location: /trustFramework/keySets('B2C_1A_keyset1')
{
"id": "B2C_1A_keyset1",
"keys": [
{
"k": "k-value",
"x5c": [
"x5c-value"
],
"x5t": "x5t-value",
"kty": "kty-value",
"use": "use-value",
"exp": 99,
"nbf": 99,
"kid": "kid-value",
"e": "e-value",
"n": "n-value",
"d": "d-value",
"p": "p-value",
"q": "q-value",
"dp": "dp-value",
"dq": "dq-value",
"qi": "qi-value"
}
]
}