PassportIdentityとは? わかりやすく解説

PassportIdentity クラス

PassportAuthenticationModule が使用するクラスを提供します。このクラスでは、アプリケーションが Ticket メソッドにアクセスする手段を提供します。このクラスは継承できません。

名前空間: System.Web.Security
アセンブリ: System.Web (system.web.dll 内)
構文構文

Public NotInheritable Class
 PassportIdentity
    Implements IIdentity, IDisposable
Dim instance As PassportIdentity
public sealed class PassportIdentity : IIdentity,
 IDisposable
public ref class PassportIdentity sealed :
 IIdentity, IDisposable
public final class PassportIdentity implements
 IIdentity, IDisposable
public final class PassportIdentity implements
 IIdentity, IDisposable
解説解説

.NET Passport のクラスとメソッドを使用する場合は、Passport SDK をインストールしてください。Passport SDK バージョン 1.4 は、サポートしていますが、推奨はしていません。Passport SDK バージョン 2.1 はサポートされ、推奨されています。Passport SDK は、http://www.microsoft.com/japan/net/downloads.asp からダウンロードできます。

Passport 認証の詳細については、「Passport 認証プロバイダ」を参照してください。

メモメモ

このクラスのメソッドには、対応する Passport メソッドに省略可能なパラメータがある場合があります。Passport メソッドにオプションの整数または Boolean パラメータがある場合はいつでも、"-1" を渡して Passport で既定値を使用するように指定できます。Passport メソッドにオプションの文字列パラメータがある場合はいつでも、null 参照 (Visual Basic では Nothing) を渡して Passport で既定値を使用するように指定できます。パラメータがこれらの既定値のいずれかを受け入れる場合、パラメータの説明に記述されます。

Windows XP Home Edition, Windows XP Professional x64 Edition, Windows Server 2003 プラットフォームメモ : Passport SDK バージョン 2.1 だけがサポートされます。

使用例使用例
<!-- 
This example demonstrates implementing the soft sign-in authentication approach.
 
In order for the example to
 work, the following requirements must be met. 
You can find details on these requirements in
 the Passport SDK documentation.

1. You must modify the Web.config file associated with this page
 so that 
authentication mode is set to
 "Passport".
2. You must have the Passport SDK installed.
3. You must have a Passport Site ID for the site where your page
 resides. 
If your Site ID is in the
 PREP environment, you will also need a PREP Passport.
4. You must have installed the encryption key you received after registering your
 
site and receiving a site ID.
5. You must have the Passport Manager object settings correctly
 configured for your site.
-->

<br /><span space="preserve">...</span><br
 /><%@ Page language="VB" AutoEventWireup="true"
 %>
<%@ Import Namespace="System.Drawing"
 %>
<%@ Import Namespace="System.Web.Security"
 %>
<%@ Import Namespace="System.Runtime.InteropServices"
 %>


<HTML>
    <HEAD>
        <SCRIPT runat="server">
            Private Sub Page_Load(sender As
 Object, e As System.EventArgs)
                Try 
                    ' Determine whether Passport is the type of authentication
                    ' this page is set to use. (Authentication information
                    ' is set in the Web.config file.)
                    If Not TypeOf(Me.Context.User.Identity)
 Is PassportIdentity Then
                        ' If this page isn't set to use Passport authentication
,
                        ' quit now.
                         Me.Response.Write("Error:
 Passport authentication failed. " & _
                             "Make sure that the Passport SDK
 is installed and your " & _
                             "Web.config file is configured correctly.")
                        Return
                    End If

                    ' Expire the page to avoid the browser's cache.
                    Response.Cache.SetCacheability(HttpCacheability.NoCache)
                    
                    ' Get a version of the Identity value that is cast
 as type
                    ' PassportIdentity. 
                    Dim identity As PassportIdentity
 = Me.Context.User.Identity
                    ' Determine whether the user is already signed in
 with a valid
                    ' and current ticket. Passing -1 for the parameter
 values 
                    ' indicates the default values will be used.
                    If (identity.GetIsAuthenticated(-1, -1, -1))
 Then
                        Me.Response.Write("Welcome
 to the site.<br><br>")
                        ' Print the Passport sign in button on the screen.
                        Me.Response.Write(identity.LogoTag2())
                        ' Make sure the user has core profile information
 before
                        ' trying to access it.
                        If (identity.HasProfile("core"))
 Then
                            Me.Response.Write("<b>You
 have been authenticated as " & _ 
                            "Passport identity:" &
 identity.Name & "</b></p>")
                        End If
    
                    ' Determine whether the user has a ticket.
                    ElseIf identity.HasTicket Then
                        ' If the user has a ticket but wasn't authenticated,
 that 
                        ' means the ticket is stale, so the login needs
 to be refreshed.
                        ' Passing true as the fForceLogin parameter
 value indicates that 
                        ' silent refresh will be accepted.
                        identity.LoginUser(Nothing, -1, True,
 Nothing, -1, Nothing, _
                            -1, True, Nothing)

                    ' If the user does not already have a ticket, ask
 the user
                    ' to sign in.
                    Else
                        Me.Response.Write("Please
 sign in using the link below.<br><br>")
                        ' Print the Passport sign in button on the screen.
                        Me.Response.Write(identity.LogoTag2())
                    End If

                Catch comError As System.Runtime.InteropServices.COMException
                    Me.Response.Write("An error
 occured while working with the " & _
                        "Passport SDK. The following result was
 returned: " & _
                        comError.ErrorCode)
                End Try
            End Sub
</SCRIPT>
    </HEAD>

    <body>
        <form runat="server">
        </form>
    </body>
</HTML>
<!-- 
This example demonstrates implementing the soft sign-in authentication
 approach. 
In order for the example to work, the following requirements must
 be met. 
You can find details on these requirements in the Passport SDK
 documentation.

1. You must modify the Web.config file associated with this page
 so that 
authentication mode is set to "Passport".
2. You must have the Passport SDK installed.
3. You must have a Passport Site ID for the site where your page
 resides. 
If your Site ID is in the PREP environment, you will also need
 a PREP Passport.
4. You must have installed the encryption key you received after registering 
your site and receiving a site ID.
5. You must have the Passport Manager object settings correctly configured for
 
your site.
-->

<br /><span space="preserve">...</span><br /><%@
 Page language="c#" AutoEventWireup="true"
 %>
<%@ Import Namespace="System.Drawing" %>
<%@ Import Namespace="System.Web.Security" %>
<%@ Import Namespace="System.Runtime.InteropServices" %>
<HTML>
    <HEAD>
        <SCRIPT runat="server">
            private void Page_Load(object sender,
 System.EventArgs e)
            {
                try 
                {
                    // Determine whether Passport is the type of authentication
                    // this page is set to use. (Authentication information
                    // is set in the Web.config file.)
                    if (!(this.Context.User.Identity
 is PassportIdentity))
                    {
                        // If this page isn't set to use Passport authentication
,
                        // quit now.
                        this.Response.Write("Error: Passport
 authentication failed. " + 
                            "Make sure that the Passport SDK is installed "
 +
                            "and your Web.config file is configured correctly.");
                        return;
                    }

                    // Expire the page to avoid the browser's cache.
                    Response.Cache.SetCacheability(HttpCacheability.NoCache); 


                    // Get a version of the Identity value that is cast
 as type
                    // PassportIdentity. 
                    PassportIdentity identity = (this.Context.User.Identity
 as PassportIdentity);    
                    // Determine whether the user is already signed
 in with a valid
                    // and current ticket. Passing -1 for the parameter
 values 
                    // indicates the default values will be used.
                    if (identity.GetIsAuthenticated(-1, -1, -1))
                    {
                        this.Response.Write("Welcome to the
 site.<br><br>");
                        // Print the Passport sign in button on the
 screen.
                        this.Response.Write(identity.LogoTag2());
                        // Make sure the user has core profile information
 before
                        // trying to access it.
                        if (identity.HasProfile("core"))
                        {
                            this.Response.Write("<b>You
 have been authenticated as " + 
                                "Passport identity:" + identity.Name +
 "</b></p>");
                        }
                    }
    
                    // Determine whether the user has a ticket.
                    else if (identity.HasTicket)
                    {
                        // If the user has a ticket but wasn't authenticated,
 that 
                        // means the ticket is stale, so the login needs
 to be refreshed.
                        // Passing true as the fForceLogin parameter
 value indicates that 
                        // silent refresh will be accepted.
                        identity.LoginUser(null, -1, true,
 null, -1, null, -1, true,
 null);
                    }

                    // If the user does not already have a ticket, ask
 the user
                    // to sign in.
                    else
                    {
                        this.Response.Write("Please sign
 in using the link below.<br><br>");
                        // Print the Passport sign in button on the
 screen.
                        this.Response.Write(identity.LogoTag2());
                    }
                }
                catch (System.Runtime.InteropServices.COMException
 comError)
                {
                    this.Response.Write("An error occured
 while working with the " +
                        "Passport SDK.");
                }
            }
        </SCRIPT>
    </HEAD>
    <body>
        <form runat="server">
        </form>
    </body>
</HTML>
継承階層継承階層
System.Object
  System.Web.Security.PassportIdentity
スレッド セーフスレッド セーフ
この型の public static (Visual Basic では Shared) メンバはすべて、スレッド セーフです。インスタンス メンバの場合は、スレッド セーフであるとは限りません。
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照

PassportIdentity コンストラクタ


PassportIdentity プロパティ


PassportIdentity メソッド


パブリック メソッドパブリック メソッド

( プロテクト メソッド も参照)
  名前 説明
パブリック メソッド AuthUrl オーバーロードされます。 メンバの Login サーバーの URL を含む文字列に、クエリ文字列内の Login サーバーに送られたオプションの情報を含めて返します。
パブリック メソッド AuthUrl2 オーバーロードされます。 メンバの Login サーバーの URL を含む文字列に、クエリ文字列内の Login サーバーに送られたオプションの情報を含めて返します。
パブリック メソッド Compress データを圧縮します。
パブリック メソッド CryptIsValid Passport マネージャが暗号化に有効な状態かどうかを示すフラグの状態を取得します。
パブリック メソッド CryptPutHost Passport の暗号化と複合化に使用されるキーを設定します。
パブリック メソッド CryptPutSite キーが最初にインストールされたときにキーに割り当てられたサイト名のラベルを参照して、Passport の暗号化と複合化に使用されるキーを設定します。
パブリック メソッド Decompress Compress メソッドで圧縮されたデータを圧縮解除します。
パブリック メソッド Decrypt 現在のサイトの Passport 参加要素キーを使用してデータを複号化します。
パブリック メソッド Encrypt 現在のサイトの Passport 参加要素キーを使用してデータを暗号化します。
パブリック メソッド Equals  オーバーロードされます。 2 つの Object インスタンスが等しいかどうかを判断します。 ( Object から継承されます。)
パブリック メソッド GetCurrentConfig HKLM\SW\Microsoft\Passport ハイブ下にあるレジストリ キーの内容を取得します。
パブリック メソッド GetDomainAttribute 要求されたドメイン属性を Passport マネージャに照会して、Passport ドメインの情報を提供します。
パブリック メソッド GetDomainFromMemberName メンバ名文字列から Passport ドメインを返します。
パブリック メソッド GetHashCode  特定の型のハッシュ関数として機能します。GetHashCode は、ハッシュ アルゴリズムや、ハッシュ テーブルのようなデータ構造での使用に適しています。 ( Object から継承されます。)
パブリック メソッド GetIsAuthenticated オーバーロードされます。 ユーザーが Passport 権限で認証されているかどうかを示します。
パブリック メソッド GetLoginChallenge オーバーロードされます。 302 リダイレクト URL、または Passport を認識するクライアント認証交換の実行に適切なヘッダーを出力して、ユーザーをログオンします。
パブリック メソッド GetOption 特定の Passport のログオン オプションを取得します。
パブリック メソッド GetProfileObject 指定したプロファイル属性に関する Passport プロファイル情報を返します。
パブリック メソッド GetType  現在のインスタンスの Type を取得します。 ( Object から継承されます。)
パブリック メソッド HasFlag 特定のフラグがユーザーのプロファイルに設定されているかどうかを示します。
パブリック メソッド HasProfile ユーザーのプロファイルに特定のプロファイル属性が存在するかどうかを示します。
パブリック メソッド HaveConsent ユーザーのプロファイルに完全な承認が与えられるかどうかを示します。
パブリック メソッド LoginUser オーバーロードされます。 302 リダイレクト URL の生成、または Passport を認識するクライアント認証交換の実行によって、ユーザーをログオンします。
パブリック メソッド LogoTag オーバーロードされます。 Passport リンクで HTML <img> タグを含んでいる HTML フラグメントを返します。
パブリック メソッド LogoTag2 オーバーロードされます。 Passport リンクで HTML <img> タグを含んでいる HTML フラグメントを返します。
パブリック メソッド LogoutURL オーバーロードされます。 Passport のログアウト用 URL 文字列を返します。
パブリック メソッド ReferenceEquals  指定した複数の Object インスタンスが同一かどうかを判断します。 ( Object から継承されます。)
パブリック メソッド SetOption 特定の Passport のログオン オプションを設定します。
パブリック メソッド SignOut 指定した Passport メンバを現在のセッションからログオフします。
パブリック メソッド Ticket Passport 認証チケットの、特定の属性に関する情報を取得します。
パブリック メソッド ToString  現在の Object を表す String を返します。 ( Object から継承されます。)
プロテクト メソッドプロテクト メソッド
明示的インターフェイスの実装明示的インターフェイスの実装
  名前 説明
インターフェイスの明示的な実装 System.IDisposable.Dispose PassportIdentity クラスによって使用されているすべてのリソースを解放します。
参照参照

関連項目

PassportIdentity クラス
System.Web.Security 名前空間

その他の技術情報

Passport 認証プロバイダ

PassportIdentity メンバ

PassportAuthenticationModule が使用するクラスを提供します。このクラスでは、アプリケーションが Ticket メソッドにアクセスする手段を提供します。このクラスは継承できません。

PassportIdentity データ型で公開されるメンバを以下の表に示します。


パブリック コンストラクタパブリック コンストラクタ
  名前 説明
パブリック メソッド PassportIdentity PassportIdentity クラスの新しいインスタンスを初期化します。
パブリック プロパティパブリック プロパティ
パブリック メソッドパブリック メソッド
( プロテクト メソッド も参照)
  名前 説明
パブリック メソッド AuthUrl オーバーロードされます。 メンバの Login サーバーの URL を含む文字列に、クエリ文字列内の Login サーバーに送られたオプションの情報を含めて返します。
パブリック メソッド AuthUrl2 オーバーロードされます。 メンバの Login サーバーの URL を含む文字列に、クエリ文字列内の Login サーバーに送られたオプションの情報を含めて返します。
パブリック メソッド Compress データを圧縮します。
パブリック メソッド CryptIsValid Passport マネージャが暗号化に有効な状態かどうかを示すフラグの状態を取得します。
パブリック メソッド CryptPutHost Passport の暗号化と複合化に使用されるキーを設定します。
パブリック メソッド CryptPutSite キーが最初にインストールされたときにキーに割り当てられたサイト名のラベルを参照して、Passport の暗号化と複合化に使用されるキーを設定します。
パブリック メソッド Decompress Compress メソッドで圧縮されたデータを圧縮解除します。
パブリック メソッド Decrypt 現在のサイトの Passport 参加要素キーを使用してデータを複号化します。
パブリック メソッド Encrypt 現在のサイトの Passport 参加要素キーを使用してデータを暗号化します。
パブリック メソッド Equals  オーバーロードされます。 2 つの Object インスタンスが等しいかどうかを判断します。 (Object から継承されます。)
パブリック メソッド GetCurrentConfig HKLM\SW\Microsoft\Passport ハイブ下にあるレジストリ キーの内容を取得します。
パブリック メソッド GetDomainAttribute 要求されたドメイン属性を Passport マネージャに照会して、Passport ドメインの情報を提供します。
パブリック メソッド GetDomainFromMemberName メンバ名文字列から Passport ドメインを返します。
パブリック メソッド GetHashCode  特定の型のハッシュ関数として機能します。GetHashCode は、ハッシュ アルゴリズムや、ハッシュ テーブルのようなデータ構造での使用に適しています。 (Object から継承されます。)
パブリック メソッド GetIsAuthenticated オーバーロードされます。 ユーザーが Passport 権限で認証されているかどうかを示します。
パブリック メソッド GetLoginChallenge オーバーロードされます。 302 リダイレクト URL、または Passport を認識するクライアント認証交換の実行に適切なヘッダーを出力して、ユーザーをログオンします。
パブリック メソッド GetOption 特定の Passport のログオン オプションを取得します。
パブリック メソッド GetProfileObject 指定したプロファイル属性に関する Passport プロファイル情報を返します。
パブリック メソッド GetType  現在のインスタンスの Type を取得します。 (Object から継承されます。)
パブリック メソッド HasFlag 特定のフラグがユーザーのプロファイルに設定されているかどうかを示します。
パブリック メソッド HasProfile ユーザーのプロファイルに特定のプロファイル属性が存在するかどうかを示します。
パブリック メソッド HaveConsent ユーザーのプロファイルに完全な承認が与えられるかどうかを示します。
パブリック メソッド LoginUser オーバーロードされます。 302 リダイレクト URL の生成、または Passport を認識するクライアント認証交換の実行によって、ユーザーをログオンします。
パブリック メソッド LogoTag オーバーロードされます。 Passport リンクで HTML <img> タグを含んでいる HTML フラグメントを返します。
パブリック メソッド LogoTag2 オーバーロードされます。 Passport リンクで HTML <img> タグを含んでいる HTML フラグメントを返します。
パブリック メソッド LogoutURL オーバーロードされます。 Passport のログアウト用 URL 文字列を返します。
パブリック メソッド ReferenceEquals  指定した複数の Object インスタンスが同一かどうかを判断します。 (Object から継承されます。)
パブリック メソッド SetOption 特定の Passport のログオン オプションを設定します。
パブリック メソッド SignOut 指定した Passport メンバを現在のセッションからログオフします。
パブリック メソッド Ticket Passport 認証チケットの、特定の属性に関する情報を取得します。
パブリック メソッド ToString  現在の Object を表す String を返します。 (Object から継承されます。)
プロテクト メソッドプロテクト メソッド
明示的インターフェイスの実装明示的インターフェイスの実装
  名前 説明
インターフェイスの明示的な実装 System.IDisposable.Dispose PassportIdentity クラスによって使用されているすべてのリソースを解放します。
参照参照

関連項目

PassportIdentity クラス
System.Web.Security 名前空間

その他の技術情報

Passport 認証プロバイダ



英和和英テキスト翻訳

英語⇒日本語日本語⇒英語

辞書ショートカット

すべての辞書の索引

「PassportIdentity」の関連用語

PassportIdentityのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



PassportIdentityのページの著作権

   
日本マイクロソフト株式会社日本マイクロソフト株式会社
© 2026 Microsoft.All rights reserved.

©2026 GRAS Group, Inc.RSS