問題タブ [microsoft-account]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - Windows ユニバーサル - ユーザーが Microsoft アカウントにサインインしているかどうかを確認する方法は?
ユーザーがローカル アカウントではなく Microsoft アカウントで Windows ユニバーサル アプリにログインしているかどうかを確認する方法はありますか?
アプリ内購入を実装しようとしていますが、CurrentApp::GetUnfulfilledConsumables()がローカル アカウントから呼び出された場合に問題が発生しました。「特定のアカウントが存在しません」というメッセージとともに例外がスローされます。
Web 上の少数の人々は、Live SDK を使用してユーザーの資格情報を初期化しようとしていますが、Microsoft 以外のアカウントでは失敗します。そして、このようにして、ユーザーがログインしているかどうかを把握するための回り道があります。 sdk-v53-how-to-tell-the-the-difference-the-difference-the-number-the-number-with-a-user-logged-in-with-a-microsoft-account-and?forum=messengerconnect )
しかし、1 つの関数呼び出しのためだけに SDK 全体を統合することなく、ユーザーが Microsoft アカウントまたはローカル アカウントにログインしているかどうかを検出する、より適切でクリーンな方法があるかどうか疑問に思っていました。
ご協力いただきありがとうございます。
c# - メール アドレスが Microsoft の「職場または学校」アカウントか Microsoft アカウントかを判断する方法
Azure マルチテナント環境で、Microsoft アカウントと '職場または学校' アカウントの両方に対して認証したいと考えています。各認証タイプには、異なる要求が必要です。「職場または学校」の要求に対して Microsoft アカウントとしてログインしようとすると、Microsoft ログインでログインが失敗し、アプリケーションに戻りません。
Microsoft Graph API に対して、特定の電子メール アドレスが「職場または学校」アカウントであるかどうかを照会する方法はありますか?
windows-store-apps - WebTokenRequestResult のユーザー名が空です
Windows 10 UWP では、WebAuthenticationCoreManager.RequestTokenAsync を使用して、Microsoft アカウントでのログインから結果を取得しようとしています。成功した WebTokenRequestResult を取得します。ResponseData[0] には ID を持つ WebAccount が含まれていますが、UserName は空です。呼び出しのスコープは wl.basic です。つまり、多くの情報を取得する必要があります。追加情報を取得する方法がわかりません。現在のテストでは、ユーザー名で問題ありません。
ユニバーサル サンプルを調べたところ、私が試みていることを実行しようとするスニペットが見つかりました。これは、webTokenRequestResult.ResponseData[0].WebAccount.UserName の出力です。
ちなみに、出力例も空です。
これはバグですか? それとも、ユーザー プロファイル データ (または少なくともユーザー名) を取得するために、私 (およびサンプルの MS) は何をしなければなりませんか?
windows-8 - 新しくインストールされた Visual Studio 2015 は、IDE の再起動時に完全に変更されました
Windows 10 を使用しています。VB 2015 を数回インストールしました。何らかの理由で、白の背景のデザインが黒に変更され、インテリセンスが CSS と Javascript で機能せず、Visual Studio でそれらが言語として認識されず、[ツール] メニューが切り捨てられます。たとえば、[拡張機能と更新] メニュー項目がまったく表示されません。 . 奇妙なことに、インストール後はすべてが完璧に機能し、IDE を閉じて再度開くと、前述の問題が頭痛の種になり始めました。問題を説明するためにいくつかの写真を添付しました。
言語の問題の図
拡張機能と更新の図
Intellisense のないコード (苦痛)
参考までに: Windows 8 を使用している夫の Microsoft アカウントを使用して Visual Studio 2015 を最初にインストールしましたが、問題が発生したときに自分用に作成し、現在それを使用しています。彼の設定が私の IDE と同期されているのかもしれませんが、わかりません。問題を解決する方法がわかりません。この問題は何日も続きました。インストールの設定が設定されたままであること、言語が認識されたままであること、および拡張機能と更新プログラムが [ツール] メニュー内に残っていることを確認するにはどうすればよいですか?
azure - 職場アカウントと Microsoft アカウントの混同
職場のメール アドレスを使用して、複数の Azure IaaS 環境をセットアップしています。Azure にログインすると、"職場または学校のアカウント" と "個人のアカウント" のどちらを使用するかを尋ねられますが、どちらも同じ電子メール アドレスを参照しています。
個人アカウントに関して何かを設定したり、仕事用のメールを Microsoft Outlook.com/Hotmail/etc アカウントとしてリンクしたりしたことを覚えていません。
サブスクリプションへのアクセスは、仕事用アカウントではなく、個人用アカウントに適用されました。
アクセスを許可する場合、アクセスを許可するものを選択する方法はありません。
いくつかの質問
- いくつかの VM を作成しましたが、それらを自分の仕事用アカウントにリンクしたいと考えています。これを変更できますか?
- 仕事用メールと個人用メールのリンクを解除するにはどうすればよいですか。仕事は仕事のためだけに使いたいし、両者を混同したくない。
詳細については、このスクリーングラブを参照してください。
asp.net-mvc - ASP.NET WebApi 2 を使用したモバイル アプリの Microsoft Graph 外部認証
サービスWeb API 2 + Owin にアクセスし、外部ログインをサポートしようとしているモバイル アプリ (Xamarin + MvvmCross) を作成しています。以下では、外部認証を使用してユーザーを既に登録しており、モバイル アプリからユーザーをログインさせたいだけであると仮定します。
現在、主にこのASP.NET Web API 2 外部ログイン Facebook および Google in AngularJS appに従って Facebook ログインが機能していますが、何時間も経っても、Microsoft ログインに同じ戦略を実装する方法がわかりません。 Microsoft アクセス トークンを確認する方法を見つけます。
私の理解では、独自の API を呼び出す (たとえば、ユーザー データとオブジェクトを取得する) には、まず次の手順を実行して、外部アクセス トークンを独自のサービスからローカル アクセス トークンに交換する必要があります。
- 外部プロバイダーによる認証 (モバイル アプリ内)
- プロバイダー アクセス トークンをサーバーに送信する (Web Api 2)
- プロバイダでアクセス トークンを検証して、ユーザーが正当かどうかを判断します - ProviderKey (Facebook と Google の userId)を受け取るプロセスで
- 手順 3のプロバイダー名とユーザーID を使用して、ユーザーをローカルでログインします。
- 現在ログインしているユーザーのローカル アクセス トークンを生成します。
Facebook は現在、上記のプロセス全体を Web およびモバイル アプリで実行しています。Microsoft を使用すると、モバイル アプリで認証して Microsoft アクセス トークンを取得できますが、ステップ 3 で行き詰まり、サーバーでアクセス トークンを検証して、アプリで既に登録されているユーザーを識別するために使用できる有用な情報を受け取ります。
正しいユーザーを識別するために、AspNetUserLogins テーブルからログイン プロバイダーと ProviderKeyが必要です。
Microsoft アクセス トークンを受け取った後、トークンを検証し、一致するプロバイダー名とプロバイダー キーを確認するにはどうすればよいですか?
これは外部認証の一般的/標準的なアプローチですか? もしそうなら、もっと多くの情報があっただろうと思いました。すべての助けをいただければ幸いです。
追加情報
また、新しい Microsoft Graph Api (統合された office365) を使用して、通常の Microsoft アカウントと職場/学校アカウントの両方をサポートしようとしています。そのため、Microsoft/Organisation アカウントに応じて異なるプロバイダー キーがあるようです。
コード例
ステップ 3 - ユーザーのログイン情報を取得するための外部アクセス トークンの検証
ステップ 4 - ローカル アクセス トークンを取得する
ありがとうございました
アップデート
@dstrockis オプションの両方を実装しようとしましたが、成功は限られていました。どちらのオプションでも、 ProviderKeyに一致させるために何を使用すればよいかまだわかりません
Graph Api 呼び出しで GET User を実行すると、Facebook や Google で使用される userId など、格納されている ProviderKey と一致する値がありません。Microsoft ProviderKey の値は、AAAAAAAAAAAAAAAAAAAAADWmHuzvvAQpO********9PM のようになります。
また、提案されているように、JWT Validation ライブラリを使用してアクセス トークンを検証することもできました。クレームを調べると、正しいLoginProviderを特定できます(良いスタートです) が、ProviderKey に格納されている値と一致する値はまだ見つかりません。
この値はユーザーと関係があるはずですが、直接一致するものはありません。Microsoft の OpenIdAuthentication で ProviderKey がどこから来たのか知っている人はいますか? 別の値から暗号化されていますか?
JWT トークンの検証
認証プロバイダー - Startup.Auth