phoneMethod を作成する
[アーティクル]
10/30/2023
10 人の共同作成者
フィードバック
この記事の内容
名前空間: microsoft.graph
ユーザーの新しい 電話認証方法 を追加します。 ユーザーは、 phoneType プロパティでキャプチャされた、各種類の電話を 1 つだけ持つことができます。 つまり、たとえば、既存mobile
の電話をmobile
持つユーザーに電話を追加すると失敗します。 さらに、ユーザーは、電話を追加する mobile
前に常に電話を持 alternateMobile
っている必要があります。
電話番号を追加すると、Azure Multi-Factor Authentication (MFA) とセルフサービス パスワード リセット (SSPR) の両方で使用できるようになります (有効な場合)。
さらに、ユーザーが SMS サインイン mobile
を使用するようにポリシーによって有効になっていて、番号が追加された場合、システムはそのシステムで使用する番号の登録を試みます。
この API は、次の国内クラウド展開 で使用できます。
グローバル サービス
米国政府機関 L4
米国政府機関 L5 (DOD)
21Vianet が運営する中国
✅
✅
✅
❌
アクセス許可
この API の最小特権としてマークされているアクセス許可またはアクセス許可を選択します。 アプリで必要な場合にのみ 、より高い特権のアクセス許可またはアクセス許可を使用します。 委任されたアクセス許可とアプリケーションのアクセス許可の詳細については、「 アクセス許可の種類 」を参照してください。 これらのアクセス許可の詳細については、 アクセス許可のリファレンスを参照してください 。
アクセス許可の種類
最小特権アクセス許可
特権の高いアクセス許可
委任 (職場または学校のアカウント)
UserAuthenticationMethod.ReadWrite.All
UserAuthenticationMethod.ReadWrite
委任 (個人用 Microsoft アカウント)
サポートされていません。
サポートされていません。
アプリケーション
UserAuthenticationMethod.ReadWrite.All
注意事項なし。
委任されたシナリオの場合、管理者には少なくとも認証管理者 または特権認証管理者 Microsoft Entraロール が必要です。
ユーザーは自分のアカウントに電話認証方法を追加できません。
HTTP 要求
別のユーザーのアカウントに電話認証方法を追加します。
POST /users/{id | userPrincipalName}/authentication/phoneMethods
名前
説明
Authorization
ベアラー {token}。 必須です。 認証と承認 の詳細については、こちらをご覧ください。
Content-Type
application/json. 必須です。
要求本文
要求本文で、 phoneAuthenticationMethod オブジェクトの JSON 表現を指定します。 JSON には、 と をphoneType
含めるphoneNumber
必要がありますが、読み取り専用ではありませんsmsSignInState
。
プロパティ
型
説明
phoneNumber
String
テキストまたは認証を呼び出す電話番号。 電話番号は、 形式 +{country code} {number}x{extension}
を使用し、拡張子は省略可能です。 たとえば、 +1 5555551234
または +1 5555551234x123
が有効です。 数値が必要な形式と一致しない場合、作成または更新時に拒否されます。
phoneType
String
使用可能な値は、 mobile
、 alternateMobile
、および office
です。
応答
成功した場合、このメソッドは 201 Created
応答コードと、応答本文に新しい phoneAuthenticationMethod オブジェクトを返します。
例
要求
要求の例を次に示します。
POST https://graph.microsoft.com/v1.0/users/kim@contoso.com/authentication/phoneMethods
Content-type: application/json
{
"phoneNumber": "+1 2065555555",
"phoneType": "mobile"
}
// Code snippets are only available for the latest version. Current version is 5.x
// Dependencies
using Microsoft.Graph.Models;
var requestBody = new PhoneAuthenticationMethod
{
PhoneNumber = "+1 2065555555",
PhoneType = AuthenticationPhoneType.Mobile,
};
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
var result = await graphClient.Users["{user-id}"].Authentication.PhoneMethods.PostAsync(requestBody);
プロジェクトに SDK を追加 し、authProvider インスタンスを作成 する方法の詳細については、SDK のドキュメント を参照してください。
// THE CLI IS IN PREVIEW. NON-PRODUCTION USE ONLY
mgc users authentication phone-methods create --user-id {user-id} --body '{\
"phoneNumber": "+1 2065555555",\
"phoneType": "mobile"\
}\
'
プロジェクトに SDK を追加 し、authProvider インスタンスを作成 する方法の詳細については、SDK のドキュメント を参照してください。
import (
"context"
msgraphsdk "github.com/microsoftgraph/msgraph-sdk-go"
graphmodels "github.com/microsoftgraph/msgraph-sdk-go/models"
//other-imports
)
graphClient := msgraphsdk.NewGraphServiceClientWithCredentials(cred, scopes)
requestBody := graphmodels.NewPhoneAuthenticationMethod()
phoneNumber := "+1 2065555555"
requestBody.SetPhoneNumber(&phoneNumber)
phoneType := graphmodels.MOBILE_AUTHENTICATIONPHONETYPE
requestBody.SetPhoneType(&phoneType)
phoneMethods, err := graphClient.Users().ByUserId("user-id").Authentication().PhoneMethods().Post(context.Background(), requestBody, nil)
プロジェクトに SDK を追加 し、authProvider インスタンスを作成 する方法の詳細については、SDK のドキュメント を参照してください。
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
PhoneAuthenticationMethod phoneAuthenticationMethod = new PhoneAuthenticationMethod();
phoneAuthenticationMethod.setPhoneNumber("+1 2065555555");
phoneAuthenticationMethod.setPhoneType(AuthenticationPhoneType.Mobile);
PhoneAuthenticationMethod result = graphClient.users().byUserId("{user-id}").authentication().phoneMethods().post(phoneAuthenticationMethod);
プロジェクトに SDK を追加 し、authProvider インスタンスを作成 する方法の詳細については、SDK のドキュメント を参照してください。
const options = {
authProvider,
};
const client = Client.init(options);
const phoneAuthenticationMethod = {
phoneNumber: '+1 2065555555',
phoneType: 'mobile'
};
await client.api('/users/kim@contoso.com/authentication/phoneMethods')
.post(phoneAuthenticationMethod);
プロジェクトに SDK を追加 し、authProvider インスタンスを作成 する方法の詳細については、SDK のドキュメント を参照してください。
<?php
use Microsoft\Graph\GraphServiceClient;
use Microsoft\Graph\Generated\Models\PhoneAuthenticationMethod;
$graphServiceClient = new GraphServiceClient($tokenRequestContext, $scopes);
$requestBody = new PhoneAuthenticationMethod();
$requestBody->setPhoneNumber('+1 2065555555');
$requestBody->setPhoneType(new AuthenticationPhoneType('mobile'));
$result = $graphServiceClient->users()->byUserId('user-id')->authentication()->phoneMethods()->post($requestBody)->wait();
プロジェクトに SDK を追加 し、authProvider インスタンスを作成 する方法の詳細については、SDK のドキュメント を参照してください。
Import-Module Microsoft.Graph.Identity.SignIns
$params = @{
phoneNumber = "+1 2065555555"
phoneType = "mobile"
}
New-MgUserAuthenticationPhoneMethod -UserId $userId -BodyParameter $params
プロジェクトに SDK を追加 し、authProvider インスタンスを作成 する方法の詳細については、SDK のドキュメント を参照してください。
from msgraph import GraphServiceClient
from msgraph.generated.models.phone_authentication_method import PhoneAuthenticationMethod
graph_client = GraphServiceClient(credentials, scopes)
request_body = PhoneAuthenticationMethod(
phone_number = "+1 2065555555",
phone_type = AuthenticationPhoneType.Mobile,
)
result = await graph_client.users.by_user_id('user-id').authentication.phone_methods.post(request_body)
プロジェクトに SDK を追加 し、authProvider インスタンスを作成 する方法の詳細については、SDK のドキュメント を参照してください。
応答
応答の例を下に示します。
注: ここに示す応答オブジェクトは、読みやすさのために短縮されている場合があります。
HTTP/1.1 201 Created
Content-type: application/json
{
"phoneNumber": "+1 2065555555",
"phoneType": "phoneType-value",
"smsSignInState": "ready",
"id": "3179e48a-750b-4051-897c-87b9720928f7"
}