2016-06-17 19 views
1

と一致しません。この質問は、Azure AD APIのv2.0に関連しています。クエリ文字列を含むredirect_uriが、設定されたリダイレクトURLの

アプリケーション登録ポータルで許可されたリダイレクトURLをhttp://localhost:3000(私もhttp://localhost:3000/_oauth/azureAd)と設定しました。

はまだ、認証コードを要求するクエリ文字列を含むREDIRECT_URIを提供する場合は、エラーで失敗した認証が発生します。 The reply address 'http://localhost:3000/_oauth/azureAd?close' does not match the reply addresses configured for the application.

有効なリダイレクトURLの照合時に無視されていないクエリ文字列かのように表示されます。アプリケーション登録ポータルでは、クエリ文字列でリダイレクトURLを入力できないため、これは問題です。

私はAzure ADのv2.0をサポートするMeteorのアカウントパッケージを作成中です。これはMeteor OAuthパッケージが正しく機能するための要件です。

私は想像する理想的なソリューションは、ポータルは、クエリ文字列と、無効な特殊文字をサポートしていないURLの

答えて

1

アプリケーション登録をリダイレクト検証時にそのクエリ文字列は無視されています。

回避策として、クエリ文字列を使用する代わりに、いくつかのリダイレクトURLを作成することがあります。しかし、なぜあなたはURLでクエリ文字列を使用する必要がある理由を共有したいですか?

+0

おかげで、流星の以前のバージョンとの要件だったことが判明。構成パラメータを指定するとクエリ文字列が削除され、この問題が解決されます。 –

+0

ありがとうFei!リダイレクトURLでクエリパラメータをサポートしていない理由は何ですか? – asgs

1

loginStyle設定オプションを指定することによって、Meteorがredirect_uriに?closeを追加するのを避けることができます。参照:

http://docs.meteor.com/api/accounts.html#Meteor-loginWithは、ここで説明する(以下スニペット):あなたの応答のためのhttps://github.com/meteor/meteor/blob/abd574f38008b45f5e2a6bc322b10bcdde44763a/packages/oauth/oauth_common.js#L3-L8

// XXX COMPAT WITH 0.9.0 
    // The redirect URI used to have a "?close" query argument. We 
    // detect whether we need to be backwards compatible by checking for 
    // the absence of the `loginStyle` field, which wasn't used in the 
    // code which had the "?close" argument. 
関連する問題