Skip to main content

VB.NETのスキャンルール

 

Contrast Scanでは、VB.NETに対して以下のルールをサポートしています。

深刻度

Contrastルール

エンジンルールID

説明

重大

Too Much Origins Allowed

OPT.VBNET.TooMuchOriginsAllowed

TooMuchOriginsAllowed:CORSポリシー(クロスオリジンリソース共有)での広すぎる許可範囲

重大

Code Injection

OPT.VBNET.CodeInjection

CodeInjection:コード生成の不適切な制御(コードインジェクション)

重大

Code Injection With Deserialization

OPT.VBNET.CodeInjectionWithDeserialization

CodeInjectionWithDeserialization:オブジェクトのデシリアライズ中の動的なコードインジェクション

重大

Command Injection

OPT.VBNET.CommandInjection

CommandInjection:OSコマンドで使用する特殊要素の不適切な無害化(OSコマンドインジェクション)

重大

Cross Site Scripting

OPT.VBNET.CrossSiteScripting

CrossSiteScripting:Webページ生成中の入力の不適切な無害化(クロスサイトスクリプティング)

重大

DoS Regexp

OPT.VBNET.DoSRegexp

DoSRegexp:悪意のある正規表現によるDoS攻撃の防止

重大

Ldap Injection

OPT.VBNET.LdapInjection

LdapInjection:LDAP検索フィルタにおける無害化されていないユーザ制御入力の回避

重大

Connection String Parameter Pollution

OPT.VBNET.SEC.ConnectionStringParameterPollution

ConnectionStringParameterPollution::信頼できない入力で汚染された接続文字列

重大

Http Parameter Pollution

OPT.VBNET.SEC.HttpParameterPollution

HttpParameterPollution:HTTPパラメータ汚染(HPP)

重大

Http Splitting Rule

OPT.VBNET.SEC.HttpSplittingRule

HttpSplittingRule:HTTPヘッダにおけるCR/LFシーケンスの不適切な無害化

重大

Mail Command Injection

OPT.VBNET.SEC.MailCommandInjection

MailCommandInjection:メールコマンドインジェクション

重大

No SQL Injection

OPT.VBNET.SEC.NoSQLInjection

NoSQLInjection:データクエリロジックにおける特殊要素の不適切な無害化(NoSQLインジェクション)

重大

Process Control

OPT.VBNET.SEC.ProcessControl

ProcessControl::信頼できないソースからの実行可能ファイルまたはライブラリのロードの禁止

重大

Registry Manipulation

OPT.VBNET.SEC.RegistryManipulation

RegistryManipulation:レジストリの操作

重大

Server Side Request Forgery

OPT.VBNET.ServerSideRequestForgery

ServerSideRequestForgery:サーバサイドリクエストフォージェリ(SSRF)

重大

SQL Injection

OPT.VBNET.SqlInjection

SqlInjection:SQLコマンドで使用する特殊要素の不適切な無害化(SQLインジェクション) 

重大

Stored Cross Site Scripting

OPT.VBNET.StoredCrossSiteScripting

StoredCrossSiteScripting:不適切に無害化されたデータベースとエスケープされた出力によるWebコンテンツの生成(格納型クロスサイトスクリプティング、XSS)

重大

MVC Non Action Public Methods

OPT.VBNET.MVCNonActionPublicMethods

MVCNonActionPublicMethods:コントローラー内のアクションメソッドではないパブリックメソッドの保護

重大

Path Traversal

OPT.VBNET.PathTraversal

PathTraversal:リソースへのパス名で構成される、無害化されていないユーザ制御の入力の回避

重大

Accessibility Subversion Rule

OPT.VBNET.SEC.AccessibilitySubversionRule

AccessibilitySubversionRule:.NETアクセス制限の回避(リフレクション)

重大

Anonymous Ldap Bind

OPT.VBNET.SEC.AnonymousLdapBind

AnonymousLdapBind:アクセス制御 - 匿名LDAPバインドの検出

重大

Dangerous File Upload

OPT.VBNET.SEC.DangerousFileUpload

DangerousFileUpload:制限のない危険なタイプのファイルのアップロード

重大

Static Database Connection

OPT.VBNET.SEC.StaticDatabaseConnection

StaticDatabaseConnection:静的なデータベース接続/セッション

重大

Temporary Files Left

OPT.VBNET.SEC.TemporaryFilesLeft

TemporaryFilesLeft:削除されない一時ファイル

重大

COM With Param Constructors

OPT.VBNET.VBnet.COMWithParamConstructors

COMWithParamConstructors:パラメータ付きコンストラクタでのCOM visible属性の使用の回避

重大

Dispose Finalize Throws Ex

OPT.VBNET.VBnet.DisposeFinalizeThrowsEx

DisposeFinalizeThrowsEx:コンストラクタ、Dispose、またはFinalizeにおける例外スローの回避

重大

Dispose Objects Before Losing Scope

OPT.VBNET.VBnet.DisposeObjectsBeforeLosingScope

DisposeObjectsBeforeLosingScope:オブジェクトのスコープ内破棄

重大

Do Not Dispose Objects Multiple Times

OPT.VBNET.VBnet.DoNotDisposeObjectsMultipleTimes

DoNotDisposeObjectsMultipleTimes:オブジェクトに対して複数回「Dispose」が呼び出されている可能性

重大

Do Not Use Idle Process Priority

OPT.VBNET.VBnet.DoNotUseIdleProcessPriority

DoNotUseIdleProcessPriority:アイドルプロセスの優先度の使用の禁止

重大

Mark I Serializable Types With Serializable

OPT.VBNET.VBnet.MarkISerializableTypesWithSerializable

MarkISerializableTypesWithSerializable:ISerializableクラスにおけるSerializable属性の指定

重大

Mark Windows Forms Entry Points With Sta Thread

OPT.VBNET.VBnet.MarkWindowsFormsEntryPointsWithStaThread

MarkWindowsFormsEntryPointsWithStaThread:WindowsフォームのエントリポイントへのSTAThread属性の付与

重大

Weak Cryptographic Hash

OPT.VBNET.WeakCryptographicHash

WeakCryptographicHash:脆弱な暗号化ハッシュ

重大

Weak Key Size

OPT.VBNET.WeakKeySize

WeakKeySize:脆弱な暗号方式・鍵長の検出 

重大

Weak Symmetric Encryption Algorithm

OPT.VBNET.WeakSymmetricEncryptionAlgorithm

WeakSymmetricEncryptionAlgorithm:脆弱な共通鍵暗号アルゴリズム

重大

Weak Symmetric Encryption Mode Of Operation

OPT.VBNET.WeakSymmetricEncryptionModeOfOperation

WeakSymmetricEncryptionModeOfOperation:共通鍵暗号での脆弱な操作モードの使用禁止

Cross Site Request Forgery

OPT.VBNET.CrossSiteRequestForgery

CrossSiteRequestForgery:クロスサイトリクエストフォージェリ(CSRF)

JSON Injection

OPT.VBNET.JSONInjection

JSONInjection:JSONエンティティにおける無害化されていないユーザ制御入力の使用の回避

MVC Prevent Overposting Model Definition

OPT.VBNET.MVCPreventOverpostingModelDefinition

MVCPreventOverpostingModelDefinition:モデル定義におけるオーバーポステイング攻撃の防止

MVC Prevent Underposting Model Composition

OPT.VBNET.MVCPreventUnderpostingModelComposition

MVCPreventUnderpostingModelComposition:モデル構成におけるアンダーポスティング攻撃の防止

MVC Prevent Underposting Model Definition

OPT.VBNET.MVCPreventUnderpostingModelDefinition

MVCPreventUnderpostingModelDefinition:モデル定義におけるアンダーポステイング攻撃の防止

Open Redirect

OPT.VBNET.OpenRedirect

OpenRedirect:信頼できないサイトへのURLリダイレクト(オープンリダイレクト)

Cross Site History Manipulation

OPT.VBNET.SEC.CrossSiteHistoryManipulation

CrossSiteHistoryManipulation:クロスサイト履歴操作(XSHM)

Log Forging

OPT.VBNET.SEC.LogForging

LogForging:ログの出力の不適切な無害化

Resource Injection

OPT.VBNET.SEC.ResourceInjection

ResourceInjection:リソース識別子の不適切な制御 (リリソースインジェクション) 

Trust Boundary Violation

OPT.VBNET.SEC.TrustBoundaryViolation

TrustBoundaryViolation:信頼境界線違反

Unsafe Reflection

OPT.VBNET.SEC.UnsafeReflection

UnsafeReflection:クラスまたはコードを選択するための外部制御入力の使用(安全でないリフレクション)

XML Entity Injection

OPT.VBNET.SEC.XMLEntityInjection

XMLEntityInjection:XMLエンティティインジェクション

XML Injection

OPT.VBNET.XMLInjection

XMLInjection: XMLインジェクション(別名、ブラインドXPathインジェクション)

XPath Injection

OPT.VBNET.XPathInjection

XPathInjection:XPath式内のデータの不適切な無害化(XPathインジェクション)

XQuery Injection

OPT.VBNET.XQueryInjection

XQueryInjection:XQuery式内のデータの不適切な無害化(XQueryインジェクション)

XSLT Injection

OPT.VBNET.XSLTInjection

XSLTInjection:XSLスタイルシート作成時における無害化されていないユーザ制御入力の使用の回避

Information Exposure Through Error Message

OPT.VBNET.SEC.InformationExposureThroughErrorMessage

InformationExposureThroughErrorMessage:エラー メッセージによる機密情報の露出の回避

Insecure Email Transport

OPT.VBNET.SEC.InsecureEmailTransport

InsecureEmailTransport:安全でないメール送信

Review Visible Event Handlers

OPT.VBNET.VBnet.ReviewVisibleEventHandlers

ReviewVisibleEventHandlers:publicまたはprotectedとして宣言されたイベントハンドリングメソッドの検出

Resource Leak Database

OPT.VBNET.ResourceLeakDatabase

ResourceLeakDatabase:未リリースのデータベースリソース

Resource Leak Ldap

OPT.VBNET.ResourceLeakLdap

ResourceLeakLdap:未リリースのLDAPリソース

Resource Leak Stream

OPT.VBNET.ResourceLeakStream

ResourceLeakStream:未リリースのストリームリソース

Resource Leak Unmanaged

OPT.VBNET.ResourceLeakUnmanaged

ResourceLeakUnmanaged:未リリースの管理されていないリソース

Avoid Certificate Equals

OPT.VBNET.SEC.AvoidCertificateEquals

AvoidCertificateEquals:セキュリティコンテキストにおけるX509Certificate.Equals()の使用の禁止

Cookies In Security Decision

OPT.VBNET.SEC.CookiesInSecurityDecision

CookiesInSecurityDecision:セキュリティ決定における検証と整合性チェックなしのCookieへの依存

Improper Authentication

OPT.VBNET.SEC.ImproperAuthentication

ImproperAuthentication:ユーザによるアクセス権のない操作の実行の回避

Missing Standard Error Handling

OPT.VBNET.SEC.MissingStandardErrorHandling

MissingStandardErrorHandling: ASP.Netにおける標準化されたエラー処理メカニズムの欠如

Setting Manipulation

OPT.VBNET.SEC.SettingManipulation

SettingManipulation:設定の改ざん

Unvalidated Asp Net Model

OPT.VBNET.SEC.UnvalidatedAspNetModel

UnvalidatedAspNetModel:MVC controllerコントローラにおける未検証のモデル

User Controlled SQL Primary Key

OPT.VBNET.SEC.UserControlledSQLPrimaryKey

UserControlledSQLPrimaryKey:ユーザ制御の主キーのクエリ使用禁止

Abstract Types Should Not Have Constructors

OPT.VBNET.VBnet.AbstractTypesShouldNotHaveConstructors

AbstractTypesShouldNotHaveConstructors:パブリックコンストラクタを持つパブリック抽象クラスの検出

Attribute Usage

OPT.VBNET.VBnet.AttributeUsage

AttributeUsage:AttributeUsageの指定

Avoid Excessive Complexity

OPT.VBNET.VBnet.AvoidExcessiveComplexity

AvoidExcessiveComplexity:循環的複雑度の高いメソッドの回避

Avoid Excessive Locals

OPT.VBNET.VBnet.AvoidExcessiveLocals 

AvoidExcessiveLocals:過剰なローカル変数の回避

Avoid Floating Point Equality

OPT.VBNET.VBnet.AvoidFloatingPointEquality

AvoidFloatingPointEquality:浮動小数点変数への(不)等価比較の禁止

Avoid Inconditional Recursive Invocation

OPT.VBNET.VBnet.AvoidInconditionalRecursiveInvocation

AvoidInconditionalRecursiveInvocation:前提条件のない再帰的呼び出しの回避

Avoid Out Parameters

OPT.VBNET.VBnet.AvoidOutParameters

AvoidOutParameters:publicまたはprotectedとして宣言されたメソッドにByRefパラメータがある

Avoid Overloads In Com Visible Interfaces

OPT.VBNET.VBnet.AvoidOverloadsInComVisibleInterfaces

AvoidOverloadsInComVisibleInterfaces:COM visibleインターフェイスにおけるオーバーロードされたメソッドの宣言

Avoid Uncalled Private Code

OPT.VBNET.VBnet.AvoidUncalledPrivateCode

AvoidUncalledPrivateCode:呼び出されていないprivate宣言のコードの回避

Avoid Unused Private Fields

OPT.VBNET.VBnet.AvoidUnusedPrivateFields

AvoidUnusedPrivateFields:未使用のprivateフィールドの回避

Declare Event Handlers Correctly

OPT.VBNET.VBnet.DeclareEventHandlersCorrectly

DeclareEventHandlersCorrectly:イベントハンドラの正しい宣言

Do Not Assume Int Ptr Size Rule

OPT.VBNET.VBnet.DoNotAssumeIntPtrSizeRule

DoNotAssumeIntPtrSizeRule:IntPtrまたはUIntPtrにおける32ビット以下の値でのダウンキャスト禁止

Do Not Call Overridable Methods In Constructors

OPT.VBNET.VBnet.DoNotCallOverridableMethodsInConstructors

DoNotCallOverridableMethodsInConstructors:コンストラクタからの仮想メソッドの呼び出し

Do Not Declare Static Members On Generic Types

OPT.VBNET.VBnet.DoNotDeclareStaticMembersOnGenericTypes

DoNotDeclareStaticMembersOnGenericTypes:ジェネリック型への共有メンバー宣言の禁止

Do Not Lock On This Or Types

OPT.VBNET.VBnet.DoNotLockOnThisOrTypes

DoNotLockOnThisOrTypes:「this」オブジェクトまたは「Type」でのロック禁止

Do Not Pass Types By Reference

OPT.VBNET.VBnet.DoNotPassTypesByReference

DoNotPassTypesByReference:参照による型の引き渡しの禁止

Empty Catch

OPT.VBNET.VBnet.EmptyCatch

EmptyCatch:空のcatchブロックの禁止

Exceptions Should Be Public

OPT.VBNET.VBnet.ExceptionsShouldBePublic

ExceptionsShouldBePublic:例外のpublic宣言

Get Hash Code Equals

OPT.VBNET.VBnet.GetHashCodeEquals

GetHashCodeEquals:GetHashCodeとEqualsのオーバーロード

Identifiers Should Not Match Keywords

OPT.VBNET.VBnet.IdentifiersShouldNotMatchKeywords

IdentifiersShouldNotMatchKeywords:識別子と予約語の一致禁止

Initialize Reference Type Static Fields Inline

OPT.VBNET.VBnet.InitializeReferenceTypeStaticFieldsInline

InitializeReferenceTypeStaticFieldsInline:参照型の静的フィールドのインライン初期化

Mark Boolean P Invoke Arguments With Marshal As

OPT.VBNET.VBnet.MarkBooleanPInvokeArgumentsWithMarshalAs

MarkBooleanPInvokeArgumentsWithMarshalAs:Boolean型のP/Invoke変数へのMarshalAs属性の付与

Max Methods

OPT.VBNET.VBnet.MaxMethods

MaxMethods:メソッドの最大許容数

Non Constant Fields Should Not Be Visible

OPT.VBNET.VBnet.NonConstantFieldsShouldNotBeVisible

NonConstantFieldsShouldNotBeVisible:publicまたはprotected宣言の静的フィールドが定数や読み取り専用であることの禁止

Normalize Strings To Uppercase

OPT.VBNET.VBnet.NormalizeStringsToUppercase

NormalizeStringsToUppercase:チェーンの小文字変換の禁止

Obsolete Usages

OPT.VBNET.VBnet.ObsoleteUsages

ObsoleteUsages:選択した .NET SDKでの非推奨のメソッドや古いクラスの使用の回避

Parameter Names Should Not Match Member Names

OPT.VBNET.VBnet.ParameterNamesShouldNotMatchMemberNames

ParameterNamesShouldNotMatchMemberNames:パラメータ名とメンバー名の一致の禁止

Properties Should Not Return Arrays

OPT.VBNET.VBnet.PropertiesShouldNotReturnArrays

PropertiesShouldNotReturnArrays:プロパティからの配列のリターンの禁止

Property Names Should Not Match Get Methods

OPT.VBNET.VBnet.PropertyNamesShouldNotMatchGetMethods

PropertyNamesShouldNotMatchGetMethods:プロパティ名とgetメソッドの一致の禁止

Remove Unused Locals

OPT.VBNET.VBnet.RemoveUnusedLocals

RemoveUnusedLocals:未使用のローカル変数

Insecure Randomness

OPT.VBNET.InsecureRandomness

InsecureRandomnes:安全でない標準的な擬似乱数生成器

Review Unused Parameters

OPT.VBNET.VBnet.ReviewUnusedParameters

ReviewUnusedParameters:使用されていないメソッドパラメータ

Hardcoded Crypto Key

OPT.VBNET.SEC.HardcodedCryptoKey

HardcodedCryptoKey:ハードコードされた暗号鍵の使用

Suppress Finalize Correctly

OPT.VBNET.VBnet.SuppressFinalizeCorrectly

SuppressFinalizeCorrectly:GC.SuppressFinalizeの正しい呼び出し

Use Safe Handle To Encapsulate Native Resources

OPT.VBNET.VBnet.UseSafeHandleToEncapsulateNativeResources

UseSafeHandleToEncapsulateNativeResources:System.IntPtrの使用

Variable Names Should Not Match Field Names

OPT.VBNET.VBnet.VariableNamesShouldNotMatchFieldNames

VariableNamesShouldNotMatchFieldNames:変数名とフィールド名の一致の禁止

Hardcoded Salt

OPT.VBNET.SEC.HardcodedSalt

HardcodedSalt:安全でないハードコードされたソルト

Insecure Transport

OPT.VBNET.SEC.InsecureTransport

InsecureTransport:安全でない送信

Proper Padding With Public Key Crypto

OPT.VBNET.SEC.ProperPaddingWithPublicKeyCrypto

ProperPaddingWithPublicKeyCrypto:最適非対称暗号化パディング(OAEP)を使用しないRSAアルゴリズムの使用

Server Insecure Transport

OPT.VBNET.SEC.ServerInsecureTransport

ServerInsecureTransport:HTTPサーバにおける安全でない送信

Weak Encryption

OPT.VBNET.WeakEncryption

WeakEncryption:不十分な長さのRSA鍵

情報

Do Not Initialize Unnecessarily

OPT.VBNET.DoNotInitializeUnnecessarily

DoNotInitializeUnnecessarily:不必要な変数の初期化

情報

Do Not Prefix Enum Values With Type Name

OPT.VBNET.DoNotPrefixEnumValuesWithTypeName

DoNotPrefixEnumValuesWithTypeName:列挙型のメンバー名が列挙型名で始まることの禁止

情報

Avoid Unneeded Calls On String

OPT.VBNET.VBnet.AvoidUnneededCallsOnString

AvoidUnneededCallsOnString: 文字列オブジェクトに対する不要な呼び出しの回避

情報

Do Not Hardcode Locale Specific Strings

OPT.VBNET.VBnet.DoNotHardcodeLocaleSpecificStrings

DoNotHardcodeLocaleSpecificStrings:ロケール固有の文字列のハードコードの禁止

情報

Identifiers Should Have Correct Suffix

OPT.VBNET.VBnet.IdentifiersShouldHaveCorrectSuffix

IdentifiersShouldHaveCorrectSuffix:識別子における正しいサフィックス(接尾辞)

情報

Identifiers Should Not Contain Underscores

OPT.VBNET.VBnet.IdentifiersShouldNotContainUnderscores 

IdentifiersShouldNotContainUnderscores:識別子に含まれてるアンダースコア文字

情報

Identifiers Should Not Have Incorrect Suffix

OPT.VBNET.VBnet.IdentifiersShouldNotHaveIncorrectSuffix

IdentifiersShouldNotHaveIncorrectSuffix:識別子における誤ったサフィックス(接尾辞)

情報

Interface Naming Conventions

OPT.VBNET.VBnet.InterfaceNamingConventions

InterfaceNamingConventions:インターフェイスの命名規則の遵守

情報

Naming Conventions

OPT.VBNET.VBnet.NamingConventions

NamingConventions:クラスの命名規則の遵守

Constants Should Be Transparent

OPT.VBNET.ConstantsShouldBeTransparent

ConstantsShouldBeTransparent:フィールド定数/列挙型メンバーの透過性の必要

Information Exposure Through Debug Log

OPT.VBNET.SEC.InformationExposureThroughDebugLog

InformationExposureThroughDebugLog:ログによる重要な情報の公開の回避

Avoid Language Specific Type Names In Parameters

OPT.VBNET.AvoidLanguageSpecificTypeNamesInParameters

AvoidLanguageSpecificTypeNamesInParameters:public宣言されたメソッドのパラメータ名における言語固有の型名の禁止

Avoid Unnecessary String Creation

OPT.VBNET.AvoidUnnecessaryStringCreation

AvoidUnnecessaryStringCreation:System.String.ToLowerまたはSystem.String.ToUpperへの呼び出しにおける不要な文字列作成の回避

Collection Properties Should Be Read Only

OPT.VBNET.CollectionPropertiesShouldBeReadOnly

CollectionPropertiesShouldBeReadOnly:System.Collections.ICollectionを実装する型のpublicプロパティは読み取り専用にすることが必要

Consider Converting Method To Property

OPT.VBNET.ConsiderConvertingMethodToProperty

ConsiderConvertingMethodToProperty:メソッドをプロパティに変換することの検討

Disposable Types Should Declare Finalizer

OPT.VBNET.DisposableTypesShouldDeclareFinalizer

DisposableTypesShouldDeclareFinalizer:System.IDisposableを実装し、アンマネージド型のフィールドを持つ型におけるファイナライザーの必要性

Do Not Concatenate Strings Inside Loops

OPT.VBNET.DoNotConcatenateStringsInsideLoops

DoNotConcatenateStringsInsideLoops:ループ内での文字列の連結の禁止

Do Not Mark Enums With Flags

OPT.VBNET.DoNotMarkEnumsWithFlags

DoNotMarkEnumsWithFlags:System.FlagsAttribute属性を持つ列挙型の値が2のべき乗であるかのチェック

Identifiers Should Be Cased Correctly

OPT.VBNET.IdentifiersShouldBeCasedCorrectly

IdentifiersShouldBeCasedCorrectly:規約に従った「パスカルケース」と「キャメルケース」の正しい使用

Implement Serialization Constructors

OPT.VBNET.ImplementSerializationConstructors

ImplementSerializationConstructors: ISerializableを実装する型におけるシリアライズコンストラクタの実装の必要性

Implement Serialization Methods Correctly

OPT.VBNET.ImplementSerializationMethodsCorrectly

ImplementSerializationMethodsCorrectly:シリアライズイベントを処理するメソッドでの正しいシグネチャの実装

Initialize Value Type Static Fields Inline

OPT.VBNET.InitializeValueTypeStaticFieldsInline

InitializeValueTypeStaticFieldsInline:静的コンストラクタの明示的な宣言の回避

Instantiate Argument Exceptions Correctly

OPT.VBNET.InstantiateArgumentExceptionsCorrectly

InstantiateArgumentExceptionsCorrectly;ArgumentExceptionsのデフォルトコンストラクタの呼び出しの回避

Operator Overloads Have Named Alternates

OPT.VBNET.OperatorOverloadsHaveNamedAlternates

OperatorOverloadsHaveNamedAlternates:型が演算子をオーバーライドする場合に代替メソッドもオーバーライドすることの推奨

Overload Operator Equals On Overriding Equals

OPT.VBNET.OverloadOperatorEqualsOnOverridingEquals

OverloadOperatorEqualsOnOverridingEquals: 型が System.Object.Equalsメソッドをオーバーライドする場合に演算子[]{}もオーバーライドすることが必要

Prefer Jagged Arrays Over Multidimensional

OPT.VBNET.PreferJaggedArraysOverMultidimensional

PreferJaggedArraysOverMultidimensional:多次元配列の宣言不可

Use Literals Where Appropriate

OPT.VBNET.UseLiteralsWhereAppropriate

UseLiteralsWhereAppropriate: 値で初期化される共有フィールドや読み取り専用フィールドの宣言の禁止

Use Managed Equivalents Of Win32 Api

OPT.VBNET.UseManagedEquivalentsOfWin32Api

UseManagedEquivalentsOfWin32Api:win32 apiを管理するための既存メソッドの代替手段の使用

Attribute String Literals Should Parse Correctly

OPT.VBNET.VBnet.AttributeStringLiteralsShouldParseCorrectly

AttributeStringLiteralsShouldParseCorrectly:属性のリテラル値の正しい記述

Avoid Long Parameter Lists

OPT.VBNET.VBnet.AvoidLongParameterLists

AvoidLongParameterLists:パラメータが多すぎるメソッドのエンコード禁止

Avoid Namespaces With Few Types

OPT.VBNET.VBnet.AvoidNamespacesWithFewTypes

AvoidNamespacesWithFewTypes:型が少ない名前空間の回避

Avoid Non Stored Procedure Commands

OPT.VBNET.VBnet.AvoidNonStoredProcedureCommands

AvoidNonStoredProcedureCommands:ストアドプロシージャ以外のデータベース操作の使用回避

Avoid Type Get Type For Constant Strings

OPT.VBNET.VBnet.AvoidTypeGetTypeForConstantStrings

AvoidTypeGetTypeForConstantStrings:定数文字列値でのType.GetType()呼び出しの禁止

Avoid Uninstantiated Internal Classes

OPT.VBNET.VBnet.AvoidUninstantiatedInternalClasses

AvoidUninstantiatedInternalClasses:アセンブリレベルの型のインスタンスがアセンブリ内のコードによって作成されていないことの検出

Call Base Class Methods On I Serializable Types

OPT.VBNET.VBnet.CallBaseClassMethodsOnISerializableTypes

CallBaseClassMethodsOnISerializableTypes:ISerializable型の基底クラスのメソッド呼び出し

Check New Exception Without Throwing

OPT.VBNET.VBnet.CheckNewExceptionWithoutThrowing

CheckNewExceptionWithoutThrowing:例外のインスタンス化が未使用

Consider Custom Accessors For Non Visible Events Rule

OPT.VBNET.Vbnet.ConsiderCustomAccessorsForNonVisibleEventsRule

ConsiderCustomAccessorsForNonVisibleEventsRule:非表示イベントにおいて、既定のアクセサの代わりにカスタムアクセサを使用することの検討

Delegates Passed To Native Code Must Include Exception Handling Rule

OPT.VBNET.VBnet.DelegatesPassedToNativeCodeMustIncludeExceptionHandlingRule

DelegatesPassedToNativeCodeMustIncludeExceptionHandlingRule:ネイティブコードに渡すデリゲートのブロック全体をcatchハンドラで囲むことの必要性

Do Not Cast Unnecessarily

OPT.VBNET.VBnet.DoNotCastUnnecessarily

DoNotCastUnnecessarily:引数またはローカル変数の1つに対して重複したキャストを実行するメソッド

Do Not Destroy Stack Trace Rule

OPT.VBNET.VBnet.DoNotDestroyStackTraceRule

DoNotDestroyStackTraceRule:catchハンドラで同じ例外をスローするのではなく、元の例外を再スローすることが必要

Do Not Indirectly Expose Methods With Link Demands

OPT.VBNET.VBnet.DoNotIndirectlyExposeMethodsWithLinkDemands

DoNotIndirectlyExposeMethodsWithLinkDemands:リンク要求のあるメソッドを間接的に公開することの禁止

Do Not Raise Exceptions In Unexpected Locations

OPT.VBNET.Vbnet.DoNotRaiseExceptionsInUnexpectedLocations

DoNotRaiseExceptionsInUnexpectedLocations:予期しない箇所での例外発生の回避

Do Not Use Thread Static With Instance Fields

OPT.VBNET.VBnet.DoNotUseThreadStaticWithInstanceFields

DoNotUseThreadStaticWithInstanceFields:インスタンスフィールドでの「ThreadStatic」使用の禁止

Num Max Class By Namespaces

OPT.VBNET.VBnet.NumMaxClassByNamespaces

NumMaxClassByNamespaces:パッケージ/名前空間ごとの過剰なクラス数の回避

Only Flags Enums Should Have Plural Names

OPT.VBNET.VBnet.OnlyFlagsEnumsShouldHavePluralNames

OnlyFlagsEnumsShouldHavePluralNames:外部から参照可能な列挙型が複数形の名前で終わり、Flags属性が設定されていないことの検出

Operations Should Not Overflow

OPT.VBNET.VBnet.OperationsShouldNotOverflow

OperationsShouldNotOverflow:演算のオーバーフロー防止

Override Equals On Value Types

OPT.VBNET.VBnet.OverrideEqualsOnValueTypes

OverrideEqualsOnValueTypes:公開値型がEqualsをオーバーライドしていないことを検出

Remove Empty Finalizers

OPT.VBNET.VBnet.RemoveEmptyFinalizers

RemoveEmptyFinalizers:空のファイナライザの削除

Test For Empty Strings Using Length

OPT.VBNET.VBnet.TestForEmptyStringsUsingLength

TestForEmptyStringsUsingLength:「Equals」を使用した空文字列との比較 

Types That Own Native Resources Should Be Disposable

OPT.VBNET.VBnet.TypesThatOwnNativeResourcesShouldBeDisposable

TypesThatOwnNativeResourcesShouldBeDisposable:ネイティブリソースを所有する型を破棄することの必要性

Write Static Field From Instance Method

OPT.VBNET.VBnet.WriteStaticFieldFromInstanceMethod

WriteStaticFieldFromInstanceMethod:インスタンスメソッドから静的フィールドへの書き込み禁止

Unsafe Cookie Rule

OPT.VBNET.SEC.UnsafeCookieRule

UnsafeCookieRule: 適切なセキュリティプロパティを持つサーバ側のCookieの生成

Avoid Host Name Checks

OPT.VBNET.SEC.AvoidHostNameChecks

AvoidHostNameChecks:DNSポイズニングによる信頼性の低いクライアント側のホスト名のチェックの回避

MVC Remove Version Header

OPT.VBNET.MVCRemoveVersionHeader

MVCRemoveVersionHeader:HTTPヘッダからのASP.NET MVCバージョンの削除

P Invokes Should Not Be Safe Critical

OPT.VBNET.PInvokesShouldNotBeSafeCritical

PInvokesShouldNotBeSafeCritical:P/Invoke宣言でのSecuritySafeCriticalAttribute属性の使用禁止

Hardcoded Credential

OPT.VBNET.SEC.HardcodedCredential

HardcodedCredential:ハードコードされた資格情報の使用

Hardcoded Network Address

OPT.VBNET.SEC.HardcodedNetworkAddress

HardcodedNetworkAddress:ネットワーク アドレスのハードコード禁止

Plaintext Storage Of Password

OPT.VBNET.SEC.PlaintextStorageOfPassword

PlaintextStorageOfPassword:パスワードの平文保存

Serializable Class Containing Sensitive Data

OPT.VBNET.SEC.SerializableClassContainingSensitiveData

SerializableClassContainingSensitiveData:機密データを含むシリアライズ可能クラスの検出

Secure Serialization Constructors

OPT.VBNET.SecureSerializationConstructors

SecureSerializationConstructors:セキュリティ要求によるシリアライズコンストラクタの保護

Secured Types Should Not Expose Fields

OPT.VBNET.SecuredTypesShouldNotExposeFields

SecuredTypesShouldNotExposeFields:Link Demandsで保護された型におけるフィールド公開の禁止

Transparency Annotations Should Not Conflict

OPT.VBNET.TransparencyAnnotationsShouldNotConflict

TransparencyAnnotationsShouldNotConflict:型のセキュリティ属性において、それに含まれるメンバーのセキュリティ属性と同じ透過性を持つことが必要

Do Not Expose Fields In Secured Type

OPT.VBNET.VBnet.DoNotExposeFieldsInSecuredType

DoNotExposeFieldsInSecuredType:セキュリティで保護されているpublic型における公開フィールドの宣言の禁止

Review Suppress Unmanaged Code Security Usage

OPT.VBNET.VBnet.ReviewSuppressUnmanagedCodeSecurityUsage

ReviewSuppressUnmanagedCodeSecurityUsage:「SuppressUnmanagedCodeSecurity」属性の使用禁止

Avoid Readonly Mutable Types

OPT.VBNET.AvoidReadonlyMutableTypes

AvoidReadonlyMutableTypes:外部から参照可能な読み取り専用フィールドでの変更可能な型宣言の回避

Call GC Keep Alive When Usinga Ntive Resources

OPT.VBNET.CallGCKeepAliveWhenUsingaNtiveResources

CallGCKeepAliveWhenUsingaNtiveResources: GC.KeepAliveはアンマネージドリソースで呼び出すことが必要

Critical Types Must Not Participate In Type Equivalence

OPT.VBNET.CriticalTypesMustNotParticipateInTypeEquivalence

CriticalTypesMustNotParticipateInTypeEquivalence:型の等価性に関与するメンバーや型でのSecurityCriticalAttributeの使用禁止

Dispose Methods Should Call Suppress Finalize

OPT.VBNET.DisposeMethodsShouldCallSuppressFinalize

DisposeMethodsShouldCallSuppressFinalize:System.IDisposableを実装するクラスのDisposeメソッドでGC.SuppressFinalizeを呼び出す必要性

Method Security Should Be Superset Of Type

OPT.VBNET.MethodSecurityShouldBeSupersetOfType

MethodSecurityShouldBeSupersetOfType:メソッドのセキュリティは型のセキュリティのサブセットであることが必要

MVC Post In Controllers

OPT.VBNET.MVCPostInControllers

MVCPostInControllers:MVCコントローラの状態変更操作で許可されるHTTP動詞の制限

Potential Infinite Loop

OPT.VBNET.PotentialInfiniteLoop

PotentialInfiniteLoop:到達不可能な終了条件を持つルール(無限ループ)

Provide Correct Arguments To Formatting Methods

OPT.VBNET.ProvideCorrectArgumentsToFormattingMethods

ProvideCorrectArgumentsToFormattingMethods:System.String.Formatに渡されたformat引数が、パラメータとして渡されたオブジェクトと一致しないことを検出

Provide Deserialization Methods For Optional Fields

OPT.VBNET.ProvideDeserializationMethodsForOptionalFields

ProvideDeserializationMethodsForOptionalFields:OptionalFieldAttributeでマークされたフィールドをデシリアライズするためのメソッドの提供

Review Declarative Security On Value Types

OPT.VBNET.ReviewDeclarativeSecurityOnValueTypes 

ReviewDeclarativeSecurityOnValueTypes:値型における宣言型セキュリティの回避

Review Imperative Security

OPT.VBNET.ReviewImperativeSecurity

ReviewImperativeSecurity:可能な限りの命令型セキュリティ使用の回避

Http Request Value Shadowing

OPT.VBNET.SEC.HttpRequestValueShadowing

HttpRequestValueShadowing:リクエスト データがあいまいな方法でアクセスされれており、攻撃に対して脆弱になる可能性があることを検出

Main Method In Web Application

OPT.VBNET.SEC.MainMethodInWebApplication

MainMethodInWebApplication:WebアプリケーションでのMain()メソッドの使用禁止

System Information Leak

OPT.VBNET.SystemInformationLeak

SystemInformationLeak:不正な制御範囲へのシステムデータ漏洩の検出

Test For Na N Correctly

OPT.VBNET.TestForNaNCorrectly

TestForNaNCorrectly:等価テストにおける式でのNaNの使用禁止

Transparent Methods Must Not Call Native Code

OPT.VBNET.TransparentMethodsMustNotCallNativeCode

TransparentMethodsMustNotCallNativeCode: 透過的なメソッドにおけるネイティブコード呼び出しの禁止

Transparent Methods Must Not Handle Process Corrupting Exceptions

OPT.VBNET.TransparentMethodsMustNotHandleProcessCorruptingExceptions

TransparentMethodsMustNotHandleProcessCorruptingExceptions:透過的なメソッドにおけるHandleProcessCorruptedStateExceptionsAttribute属性付与の禁止

Transparent Methods Should Not Be Protected With Link Demands

OPT.VBNET.TransparentMethodsShouldNotBeProtectedWithLinkDemands

TransparentMethodsShouldNotBeProtectedWithLinkDemands:透過的なメソッドにおいてLinkDemandは不要

Transparent Methods Should Not Demand

OPT.VBNET.TransparentMethodsShouldNotDemand

TransparentMethodsShouldNotDemand:透過的なメソッドにおいてSecurityAction.Demandを要求せずCodeAccessPermission.Demandメソッドを呼び出さないこと

Transparent Methods Should Not Load Assemblies From Byte Arrays

OPT.VBNET.TransparentMethodsShouldNotLoadAssembliesFromByteArrays

TransparentMethodsShouldNotLoadAssembliesFromByteArrays:透過的なメソッドにおいてAssembly.Load methodを使用するバイト配列からのアセンブリのロードの禁止

Transparent Methods Should Not Use Suppress Unmanaged Code Security

OPT.VBNET.TransparentMethodsShouldNotUseSuppressUnmanagedCodeSecurity

TransparentMethodsShouldNotUseSuppressUnmanagedCodeSecurity:透過的なメソッドにおけるSuppressUnmanagedCodeSecurityAttribute属性の使用禁止

Type Link Demands Require Inheritance Demands

OPT.VBNET.TypeLinkDemandsRequireInheritanceDemands

TypeLinkDemandsRequireInheritanceDemands:リンク要求で保護された公開型における継承要求の必要性

Unchecked Input In Loop Condition

OPT.VBNET.UncheckedInputInLoopCondition

UncheckedInputInLoopCondition:ループ条件における未チェックの入力

Unchecked Return Value

OPT.VBNET.UncheckedReturnValue

UncheckedReturnValue:未チェックの戻り値

Array Fields Should Not Be Read Only

OPT.VBNET.VBnet.ArrayFieldsShouldNotBeReadOnly

ArrayFieldsShouldNotBeReadOnly:読み取り専用の配列フィールドの禁止

Attribute Suffix

OPT.VBNET.VBnet.AttributeSuffix

AttributeSuffix:属性クラスの名前には接尾辞として「Attribute」を付けることが必要

Avoid Calling Problematic Methods

OPT.VBNET.VBnet.AvoidCallingProblematicMethods

AvoidCallingProblematicMethods:危険な呼び出しの可能性

Avoid Large Methods

OPT.VBNET.VBnet.AvoidLargeMethods

AvoidLargeMethods:コード行数が多すぎる関数やメソッドの回避

Avoid Large Structure

OPT.VBNET.VBnet.AvoidLargeStructure

AvoidLargeStructure:大きすぎる構造体の作成の回避

Avoid Protected Instance Fields 

OPT.VBNET.VBnet.AvoidProtectedInstanceFields

AvoidProtectedInstanceFields: Protected/Publicフィールドの回避

Avoid Static Members In Com Visible Types

OPT.VBNET.VBnet.AvoidStaticMembersInComVisibleTypes

AvoidStaticMembersInComVisibleTypes:COM visible型における静的メンバー定義の回避

Avoid Unsealed Concrete Attributes Rule

OPT.VBNET.VBnet.AvoidUnsealedConcreteAttributesRule

AvoidUnsealedConcreteAttributesRule:NotInheritable(継承不可)属性の抽象化

Bad Exception Parent

OPT.VBNET.VBnet.BadExceptionParent

BadExceptionParent:カスタム例外における特定の「許可されていない」基底例外クラスからの派生禁止

Bad Exception Thrown

OPT.VBNET.VBnet.BadExceptionThrown

BadExceptionThrown:不正な例外のスロー(例外は別個のクラスで定義する必要あり)

Call Get Last Error Immediately After P Invoke

OPT.VBNET.VBnet.CallGetLastErrorImmediatelyAfterPInvoke

CallGetLastErrorImmediatelyAfterPInvoke:P/Invoke直後のGetLastErrorの呼び出し

Check New Thread Without Start

OPT.VBNET.VBnet.CheckNewThreadWithoutStart

CheckNewThreadWithoutStart:開始されていないスレッドの作成の回避

Clone Method Should Not Return Null

OPT.VBNET.VBnet.CloneMethodShouldNotReturnNull

CloneMethodShouldNotReturnNull:上書きされたClone()メソッドにおけるNullのリターンの禁止

Collection Suffix

OPT.VBNET.VBnet.CollectionSuffix

CollectionSuffix:「Collection」インターフェイスを実装するクラスへのサフィックス(接尾辞)付与の必要性

Collections Should Implement Generic Interface

OPT.VBNET.VBnet.CollectionsShouldImplementGenericInterface

CollectionsShouldImplementGenericInterface: コレクションのジェネリックインターフェイス実装

Com Visible Type Base Types Should Be Com Visible

OPT.VBNET.VBnet.ComVisibleTypeBaseTypesShouldBeComVisible

ComVisibleTypeBaseTypesShouldBeComVisible:COM visible型は非COM visible型から派生

Common Exception Bases

OPT.VBNET.VBnet.CommonExceptionBases

CommonExceptionBases:このルールのプロパティで定義された許可されたクラスからのカスタム例外の派生

Consider Passing Base Types As Parameters

OPT.VBNET.VBnet.ConsiderPassingBaseTypesAsParameters

ConsiderPassingBaseTypesAsParameters:基本型をパラメータとして渡すことの検討

Declare Types In Namespaces

OPT.VBNET.VBnet.DeclareTypesInNamespaces

DeclareTypesInNamespaces:名前空間での型の宣言

Default Parameters Should Not Be Used

OPT.VBNET.VBnet.DefaultParametersShouldNotBeUsed

DefaultParametersShouldNotBeUsed:デフォルトパラメータの使用禁止

Disable Debugging Code Rule

OPT.VBNET.VBnet.DisableDebuggingCodeRule

DisableDebuggingCodeRule:Console.WriteLineの使用回避

Disposable Fields Should Be Disposed

OPT.VBNET.VBnet.DisposableFieldsShouldBeDisposed

DisposableFieldsShouldBeDisposed:IDisposableを実装するフィールドのDisposeメソッドの呼び出し

Dispose Finalize

OPT.VBNET.VBnet.DisposeFinalize

DisposeFinalize:FinalizeとDisposeの両方の実装

Do Not Catch General Exception Types

OPT.VBNET.VBnet.DoNotCatchGeneralExceptionTypes

DoNotCatchGeneralExceptionTypes:一般的な例外のキャッチ禁止

Do Not Declare Overridable Members In Not Inheritable Types

OPT.VBNET.VBnet.DoNotDeclareOverridableMembersInNotInheritableTypes

DoNotDeclareOverridableMembersInNotInheritableTypes:NotInheritableクラスにおけるOverridableかつ非finalメンバー宣言の禁止

Do Not Decrease Inherited Member Visibility

OPT.VBNET.VBnet.DoNotDecreaseInheritedMemberVisibility

DoNotDecreaseInheritedMemberVisibility:継承されたメンバーの可視性減少の禁止

Do Not Ignore Method Results

OPT.VBNET.VBnet.DoNotIgnoreMethodResults

DoNotIgnoreMethodResults:メソッドの戻り値無視の禁止

Do Not Pass Literals As Localized Parameters

OPT.VBNET.VBnet.DoNotPassLiteralsAsLocalizedParameters

DoNotPassLiteralsAsLocalizedParameters:パラメータとして渡される文字列リテラルのローカライズ

Do Not Raise Exceptions In Exception Clauses

OPT.VBNET.VBnet.DoNotRaiseExceptionsInExceptionClauses

DoNotRaiseExceptionsInExceptionClauses:finally、filter、fault句からの例外のスロー

Do Not Raise Reserved Exception Types

OPT.VBNET.VBnet.DoNotRaiseReservedExceptionTypes

DoNotRaiseReservedExceptionTypes:予約された例外の種類の発生の禁止

Do Not Use Timers That Prevent Power State Changes

OPT.VBNET.VBnet.DoNotUseTimersThatPreventPowerStateChanges

DoNotUseTimersThatPreventPowerStateChanges:電源状態の変更を妨げるタイマーの回避

Double Check Locking Rule

OPT.VBNET.VBnet.DoubleCheckLockingRule

DoubleCheckLockingRule:Singletonパターンにおける二重チェックの誤用

Equal Op With Add Sub

OPT.VBNET.VBnet.EqualOpWithAddSub

EqualOpWithAddSub:「+」、「-」、「{}」の実装

Equals Throws Ex

OPT.VBNET.VBnet.EqualsThrowsEx

EqualsThrowsEx:Equalsメソッドでの例外スローの回避

Exception Constructors

OPT.VBNET.VBnet.ExceptionConstructors

ExceptionConstructors:カスタム例外における共通コンストラクタの実装

Exception Suffix

OPT.VBNET.VBnet.ExceptionSuffix

ExceptionSuffix:Exceptionクラスを継承するクラスへの「Exception」サフィックス(接尾辞)の付与

Get Hash Code Throws Ex

OPT.VBNET.VBnet.GetHashCodeThrowsEx

GetHashCodeThrowsEx:GetHashCodeオーバーライド時の例外スローの回避

I Comparable With Comp Ops

OPT.VBNET.VBnet.IComparableWithCompOps

IComparableWithCompOps:IComparable実装時の比較演算子の実装

Implement I Serializable Correctly

OPT.VBNET.VBnet.ImplementISerializableCorrectly

ImplementISerializableCorrectly:ISerializableの正しい実装

Implement Standard Exception Constructors

OPT.VBNET.VBnet.ImplementStandardExceptionConstructors

ImplementStandardExceptionConstructors:標準の例外コンストラクタの実装

Index With I Collection

OPT.VBNET.VBnet.IndexWithICollection

IndexWithICollection:System.Collections/Interfacesから拡張されていないクラスにおけるインデックス付きプロパティの回避

Level2 Assemblies Should Not Contain Linkdemands

OPT.VBNET.VBnet.Level2AssembliesShouldNotContainLinkdemands

Level2AssembliesShouldNotContainLinkdemands:レベル2セキュリティを使用しているアプリケーションにおける、クラス/クラスメンバーによるLinkDemandの使用

Mark Members As Static

OPT.VBNET.VBnet.MarkMembersAsStatic

MarkMembersAsStatic:クラスメンバーのみにアクセスするメソッドにおける「Shared」の付与

Members Should Not Expose Certain Concrete Types

OPT.VBNET.VBnet.MembersShouldNotExposeCertainConcreteTypes

MembersShouldNotExposeCertainConcreteTypes: メンバーによる特定の具象型の公開禁止

Move P Invokes To Native Methods Class

OPT.VBNET.VBnet.MovePInvokesToNativeMethodsClass

MovePInvokesToNativeMethodsClass:P/InvokesのNativeMethodsクラスへの移動

Nested Types Should Not Be Visible

OPT.VBNET.VBnet.NestedTypesShouldNotBeVisible

NestedTypesShouldNotBeVisible:外部から参照可能な型における外部から参照可能な型の宣言

Operator Throws Ex

OPT.VBNET.VBnet.OperatorThrowsEx

OperatorThrowsEx:二項演算子のオーバーロードにおける例外スローの禁止

Pass System Obj Instead Of String

OPT.VBNET.VBnet.PassSystemObjInsteadOfString

PassSystemObjInsteadOfString:メソッド呼び出しの改善

Pointers Should Not Be Visible

OPT.VBNET.VBnet.PointersShouldNotBeVisible

PointersShouldNotBeVisible:ポインターは参照可能にしない

Properties Matched By Constructor Args 

OPT.VBNET.VBnet.PropertiesMatchedByConstructorArgs 

PropertiesMatchedByConstructorArgs:Propertiesに設定されたコンストラクタのパラメータ

Properties Should Not Be Write Only

OPT.VBNET.VBnet.PropertiesShouldNotBeWriteOnly

PropertiesShouldNotBeWriteOnly:書き込み専用プロパティの回避

Rethrow To Preserve Stack Details

OPT.VBNET.VBnet.RethrowToPreserveStackDetails

RethrowToPreserveStackDetails:例外の明示的な再スローの禁止

Same Namespace Type

OPT.VBNET.VBnet.SameNamespaceType

SameNamespaceType:名前空間名とクラス名の競合

Set Locale For Data Types

OPT.VBNET.VBnet.SetLocaleForDataTypes

SetLocaleForDataTypes:データ型へのロケールプロパティの設定

Specify Culture Info

OPT.VBNET.VBnet.SpecifyCultureInfo

SpecifyCultureInfo:CultureInfoの指定

Specify Message Box Options

OPT.VBNET.VBnet.SpecifyMessageBoxOptions

SpecifyMessageBoxOptions:MessageBoxOptionsの指定

Specify String Comparison

OPT.VBNET.VBnet.SpecifyStringComparison

SpecifyStringComparison:StringComparisonの指定

Static Holder Types Should Be Sealed

OPT.VBNET.VBnet.StaticHolderTypesShouldBeSealed

StaticHolderTypesShouldBeSealed:静的メンバーのみを含むクラスはNotInheritableと宣言することが必要

Static Holder Types Should Not Have Constructors

OPT.VBNET.VBnet.StaticHolderTypesShouldNotHaveConstructors

StaticHolderTypesShouldNotHaveConstructors:静的ホルダー型にコンストラクタを含めない

Struct Empty Constructor

OPT.VBNET.VBnet.StructEmptyConstructor

StructEmptyConstructor:コンストラクタが空の構造体の回避

Type Names Should Not Match Namespaces

OPT.VBNET.VBnet.TypeNamesShouldNotMatchNamespaces

TypeNamesShouldNotMatchNamespaces:型名と名前空間の一致の禁止

Types Should Not Extend Certain Base Types

OPT.VBNET.VBnet.TypesShouldNotExtendCertainBaseTypes

TypesShouldNotExtendCertainBaseTypes:型における一定の基本型の拡張の禁止

Uri Parameters Should Not Be Strings

OPT.VBNET.VBnet.UriParametersShouldNotBeStrings

UriParametersShouldNotBeStrings:URIパラメータが文字列であることは不可

Uri Return Values Should Not Be Strings

OPT.VBNET.VBnet.UriReturnValuesShouldNotBeStrings

UriReturnValuesShouldNotBeStrings:メソッドの名前に「uri」、「Uri」、「urn'」、「Urn'」、「url」、「Url」が含まれ、文字列が返されることを検出

Use Generic Event Handler Instances

OPT.VBNET.VBnet.UseGenericEventHandlerInstances

UseGenericEventHandlerInstances:汎用イベントハンドラのインスタンスの使用

Validate Arguments Of Public Methods

OPT.VBNET.VBnet.ValidateArgumentsOfPublicMethods

ValidateArgumentsOfPublicMethods:外部から参照可能なメソッドにおける引数の確認