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:外部から参照可能なメソッドにおける引数の確認 |