ClientFormsIdentity.IsAuthenticated プロパティ

定義

ユーザーが認証されているかどうかを示す値を取得します。Gets a value indicating whether the user has been authenticated.

public:
 property bool IsAuthenticated { bool get(); };
public bool IsAuthenticated { get; }
member this.IsAuthenticated : bool
Public ReadOnly Property IsAuthenticated As Boolean

プロパティ値

Boolean

ユーザーが認証されている場合は true。それ以外の場合は falsetrue if the user has been authenticated; otherwise, false.

実装

次のコード例は、 IIdentity ユーザーが現在クライアントアプリケーションサービスに対して認証されているかどうかを確認するために、参照を使用してこのプロパティを使用する方法を示しています。The following example code demonstrates how to use this property through an IIdentity reference to determine whether a user is currently authenticated for client application services. この例では、アプリケーションが既定の構成であることを前提としています。この構成では、認証 cookie の有効期限が切れると、ユーザーは再度ログインする必要がありません。This example assumes that the application is in the default configuration where users are not required to log in again when the authentication cookie expires. それ以外の場合は、ユーザーのログインが期限切れであることを示している WebException 可能性があります。Otherwise, the WebException might indicate that the user login has expired. 詳細については、「 How to: Configure Client Application Services」を参照してください。For more information, see How to: Configure Client Application Services.

private void SaveSettings()
{
    System.Security.Principal.IIdentity identity = 
        System.Threading.Thread.CurrentPrincipal.Identity;

    // Return if the user is not authenticated.
    if (identity == null || !identity.IsAuthenticated) return;

    // Return if the authentication type is not "ClientForms". 
    // This indicates that the user is not authenticated for 
    // client application services.
    if (!identity.AuthenticationType.Equals("ClientForms")) return;

    try
    {
        Properties.Settings.Default.Save();
    }
    catch (System.Net.WebException)
    {
        MessageBox.Show("Unable to access the Web settings service. " +
            "Settings were not saved on the remote service.", 
            "Not logged in", MessageBoxButtons.OK, MessageBoxIcon.Warning);
    }
}
Private Sub SaveSettings()

    Dim identity As System.Security.Principal.IIdentity = _
        System.Threading.Thread.CurrentPrincipal.Identity

    ' Return if the user is not authenticated.
    If identity Is Nothing OrElse Not identity.IsAuthenticated Then Return

    ' Return if the authentication type is not "ClientForms". This indicates
    ' that the user is not authenticated for client application services.
    If Not identity.AuthenticationType.Equals("ClientForms") Then Return

    Try

        My.Settings.Save()

    Catch ex As System.Net.WebException

        MessageBox.Show("Unable to access the Web settings service. " & _
            "Settings were not saved on the remote service.", _
            "Not logged in", MessageBoxButtons.OK, MessageBoxIcon.Warning)

    End Try

End Sub

注釈

通常、 ClientFormsIdentity IIdentity このクラスへの直接的な依存を回避するために、オブジェクトに参照としてアクセスします。You will typically access a ClientFormsIdentity object as an IIdentity reference to avoid a direct dependency on this class. ユーザーが認証されているかどうかを確認するには、 IIdentity.IsAuthenticated id のプロパティを確認します。You can determine whether a user is authenticated by checking the IIdentity.IsAuthenticated property of the identity. ただし、ユーザーは Windows に対して認証される場合がありますが、クライアントアプリケーションサービスでは認証されません。However, the user may be authenticated for Windows, but not for client application services. ユーザーがクライアントアプリケーションサービスに対して認証されているかどうかを判断するには、 IIdentity.AuthenticationType プロパティ値が "ClientForms" であることも確認する必要があります。To determine whether the user is authenticated for client application services, you should also confirm that the IIdentity.AuthenticationType property value is "ClientForms". 詳細については、クラスの概要に関するトピックを参照してください ClientFormsIdentityFor more information, see the ClientFormsIdentity class overview.

適用対象

こちらもご覧ください