Database Suspicious Repair Tool

This tool SQLServer-based product design problems, often due to power failure, error, missing files and other causes data errors, most of the partners have encountered this phenomenon and difficult to repair, the intelligent identification tools to quickly deal with doubt and other abnormal state database
currently The supported database versions are MSDE\SQL2000\SQL2005\SQL2008, applicable to all product lines of the company, and are seamlessly compatible with T3|T6|T+

File: n459.com/f/25127180-479733688-1b11c9 (Access password: 551685)

The following are irrelevant:

-------------------------------------------Dividing line----- ----------------------------------------

The programmer's story is so simple, the open source complex that cannot be bypassed

We are ready to do a great thing, which can also be said to be a truly inclusive thing.

Xu
Yes, you are right, it is "Xu" instead of "Xu", please allow me to talk about it.

What we are about to do, we think is a great thing, or it can be said to be a truly inclusive thing. We want to develop a completely open source product that is truly domestic and will go international in the future-Just Auth Plus (hereinafter referred to as "JAP").

JAP is an upgraded version of JustAuth (hereinafter referred to as "JA").

At the beginning of the project, there was a fierce conscious collision between my partner and I. The root cause of the collision was the fundamental contradiction between open source and commercialization. How does open source make money? If it is not commercialized, how can we maintain food and clothing? Even if it is open source, how to ensure that enough excellent developers can be attracted to participate in co-creation?

Because we are both technically born and technical people who are passionate about open source, and we all have a heartfelt passion for open source, no matter how many collisions and quarrels, we finally compromised on this complex.

JAP slogan: Just auth for any app!
JAP goal: make identity links nowhere to hide (kill the complex logic of the traditional Login module!)
JAP value: facilitate developers to seamlessly connect with any third-party applications or their own systems, and improve development efficiency , To reduce code maintenance costs.
JAP vision: to benefit from the open source community and empower developers in an open source way. Make it an indispensable "infrastructure" in the developer ecosystem, in order to form new technical standards.
1. From this (the origin of JA)
Speaking of the origin of JustAuth is actually very simple. In addition to the love of technology, another important reason is the "lazy" of technical people.

Since 2016, I started to develop my own blog system, and integrated the login functions of the two third-party platforms, QQ and Weibo. When integrating its SDK, I spent a lot of effort to study the source code, check the documentation, and test the API. The most distressing thing is that because the SDK rules of each platform are inconsistent, N versions of the same function must be copied and then adapted. The final result is a lot of redundant code in the project. as follows:

This is the implementation code for integrating QQ and Weibo at that time. In fact, if there are more platforms in contact, some problems will be discovered:

The various platforms are separated from each other (hard damage, unavoidable)
. The SDKs of each platform (some platforms do not have ready-made SDKs for use) have large and complex codes
. The APIs of each platform are relatively complicated. It can be said that it is
difficult to read the API documents of foreign websites.
An opportunity.

In 18 years, in addition to the webmaster, there were also some developers in the QQ group. At the request of these friends, I open sourced my first blog system OneBlog. With the increase of users and the needs of users, I Prepare to re-access the third-party login function.

But in view of the "shadow" when accessing third-party logins before, I was born to develop an out-of-the-box Oauth login toolkit. This is also the biggest reason for the "birth" of JustAuth later. In the final analysis, it is because I am "lazy" because I don't want to spend too much energy to go through the documentation on each platform, copy the same code over and over again, and rewrite the same function over and over again. The most important thing is that I know it must Many people will have the same problem as me.

2.
Going here (the development of JA) JustAuth has attracted the attention of developers since it was open sourced. This is also very gratifying to me, because I know that this open source tool is at least not a "scrap". Counting down the iteration of JustAuth, so far, it has been released to the v1.15.9 version. Looking back on the journey of more than a year, there are indeed some points that need to be recorded.

2019-01-31 Submitted the first line of code
2019-03-25 Released v1.0.0, and was included in the list of recommended projects in Code Cloud on the same day, ranking first in the daily and weekly rankings within a week
2019 -03-27 Officially released the v1.0.1 version to the maven central warehouse
2019-05-20 The first contributor xkcoding joined on
2019-06-20 Released the v1.7.0 version, refactored part of the code, the jar package is changed from the original 130 +kb​ optimized to ​110+kb​ (by xkcoding)
2019-06-29 Release v1.8.0 version, this version is considered a watershed. Modify the parameter of the login method to AuthCallback, encapsulate the parameters returned by the callback, and add code and state parameter verification to prevent CSRF. There is no concept of state in the version before v1.8.0.
2019-07-16 The second contributor, pengisgood, joined
2019-07-18. Chunge, the big brother of Dream Technology, joined the group. Many needs and ideas in the later period have Chunge's suggestions. Chunge is the author of Spring Cloud microservice development core mica, and projects like avue, Pigx, and bladex are more or less supported by Chunge.
2019-07-19 Release v1.9.0 version, solve the big bug hidden in v1.8.0, refactor part of the code, optimize the code structure, and reduce the amount of compiled code.
2019-07-21 JustAuth officially welcomes the title of Code Cloud [GVP]
2019-07-30 Release v1.9.3, expand the implementation of state cache
2019-08-06 The v1.10.0 version is released, which simply encapsulates the minimalist version of the ​Log​ tool class for JustAuth, and removes the slf4j dependency. This version starts to support developers to customize state caching plugins (Redis, Memcache, etc.).
2019-09-04 Release of justauth-spring-boot-starter​, which fully supports SpringBoot rapid integration (by xkcoding)
2019-09-17 Release v1 In the .12.0 version, a demo of the Nutzboot version is added, which officially supports user-defined extension of third-party authorized login.
2020-03-17 Release v1.14.0 version, integrate simple-http, liberate the strong dependence of hutool-http​, the specific implementation of HttpUtil, it is up to the user to choose, JustAuth no longer forcefully interferes with the user's choice of http tools
2020- 06-24 Release v1.15.5, integrate Alibaba Cloud platform; return the original data of third-party users after successful login
2020-06-30 Release v1.15.6, migrate the "help document" to the independent website https://justauth.wiki, Add the function of ignoring verification state
2020-09-11 Release v1.15.7 version, upgrade Github Access Token verification method; JA officially supports custom scope parameters, making JA's application scenarios wider, not just logging in
2020-10- 25 Release v1.15.8 version, upgrade simple-http version from 1.0.2 to 1.0.3, fix jdk11 httpclient use default timeout problem
Version v1.15.9 will be released on 2021-01-01, adding Himalaya, Feishu, and corporate WeChat web authorization platforms, and upgrading the facebook api version.
So far (2021/1/19), JA's achievements:

growth trend

Has been Star: gitee (4.5k), GitHub (9.8k)
2019 Nian 7 Yuefen get Gitee GVP title
in August 2019 on Github most popular Java open source projects
currently collected using a user (including enterprises, each Popular commercial projects, personal projects, etc.):

And many companies are also using JA to implement third-party authorized login, but they are not included in the list due to the inconvenience of the corporate side.

certificate

If you are currently using JA and are willing to share with us, please submit it to the following address (choose one):

https://github.com/justauth/JustAuth/issues/17
https://gitee.com/yadong.zhang/JustAuth/issues/IZ2T7
We promise that we will only use the obtained information for JA official website and project Readme documents Or the official recommended article will not be used in any other illegal, illegal or unfavorable scenarios for users.

3. Wish here (JA's future)
Is that all? No, not enough!

JA can achieve the current results thanks to the support of all developers/organizations/enterprises/community partners. We are also here to sincerely thank all leaders, friends and friends in the community.

Although JA’s current results are quite good, we don’t want to stop there. We don’t want JA to stop at "third-party login". We want to do better, so we are ready to formally establish the project "JAP"!

What is JAP?
JAP is an open source authentication middleware, based on modular design, and highly decoupled from business, it is very flexible to use, developers can effortlessly integrate JAP into any web application, just like integrating JA. easy and convenient.

What JAP has to do is to provide a set of standard solutions for all applications that require identity authentication and integrate all APPs. It is convenient for developers to seamlessly connect with any third-party applications or their own systems.

JAP slogan: Just auth into any app!
JAP Goal: Let identity links have nowhere to hide
JAP Value: It is convenient for developers to seamlessly connect with any third-party applications or their own systems, improve development efficiency, and reduce code maintenance costs.
JAP Vision: Open source The way to benefit from the open source community and empower developers. Make it an indispensable "infrastructure" in the developer ecosystem, in order to form new technical standards.
JAP open source address: https://gitee.com/fujieid/jap
JAP development background?
JA is to kill the third-party login, and JA Plus is to kill the entire login-related business module.

What are the characteristics of JAP?
Single sign-on: One place to log in, everywhere to use
Out of the box: API design tends to be vernacular, similar to and refer to JustAuth
Multi-platform:
dozens of third-party platforms at home and abroad (based on JustAuth)
OAuth (OIDC) protocol platform, built-in The common platform at home and abroad, the
SAML protocol platform, has built-in common platforms at home and abroad.
Business decoupling: JAP does not go into specific business, but only abstracts the functions of authorization and authentication into a set of standard components to facilitate quick docking of any system.
Modularization: JAP is based on Module development is basically
achieved. Which kind of standard is used. Unified standard: All built-in or custom implementations are based on standard strategies.
Multi-language support:
What are the functions of Java, Python, Go, Node and other JAPs?
Integrated account password login
Support own system account
Support third-party API access
Integrated third-party login (based on JA)
Integrated OAuth login (including OIDC)
Provide server-side services
Support custom third-party services
Integrated LDAP login
Integrated SAML login
Provide server-side services
Support custom third-party services
Integrated AD domain login
MFA
account logout
Multi-language support
...
What scenarios does JAP apply to?
For a new project, you need to develop a system that includes login and authentication. The
existing login module is self-developed. However, in the new round of technical planning, you want to refactor the login authentication module to adapt to the new future with a more flexible architecture. Requirements, such as: integrated MFA login, integrated OAuth login, etc.
You have too many projects, and each project needs a login authentication module. If you want to solve this kind of duplication of labor, you
need a long-term consideration for the company or organization or individual. , Flexible and full-featured login authentication function.
You don’t want to put R&D costs on login authentication, which is necessary, but it takes a lot of time and labor costs to complete it. Hope there is a middleware that can perfectly integrate the login authentication function. , So that R&D personnel have more time and energy to invest in business development, and improve R&D productivity and R&D efficiency.
In addition to the standard identity providers, there are also some non-standard identity providers that need to be customized by R&D personnel. Development.
Your company uses many development languages, such as: Java, Python, Node, etc. The systems corresponding to each language must use different languages ​​to achieve the same login authentication function.
You need to develop a web application that supports OAuth login
You want your system to support external OAuth services.
You need to develop a web application that supports SAML login, but you suffer from the huge and tedious business process and configuration of
SAML. You want your system to support external SAML services.
You want to develop A program that supports LDAP login, but you don’t know how to start.
You feel that traditional account passwords are very fragile. You want to allow users to log in with a one-time mobile phone verification code or email verification code.
Your company hopes to combine with its existing corporate user directory To allow employees to log in to various internal and third-party applications using their existing corporate credentials.

What are the common JAP problems?
Does JAP not support specific business operations?
For business data such as users and applications, JAP only provides standard business interfaces and does not provide database-level support. What JAP has to do is to provide a set of technical standards for developers. Since it is a standard, it cannot rely on any logic related to specific business. No matter whether your system uses MySQL, Oracle, SQLlite, Redis, MongoDB or others, JAP doesn't care. JAP provides standard interfaces to the outside world, and the business end only needs to implement the JAP interface on demand. This design can increase its flexibility to the greatest extent and make it not limited to a specific database implementation scheme.

Can JAP be used for enterprise-level projects?
Of course, the value of JAP lies in: it is convenient for developers to seamlessly connect with any third-party applications or their own systems, improve development efficiency, and reduce code maintenance costs. So for enterprises, this is a function of reducing costs and increasing efficiency. JAP is based on modular development, and does not invade business systems, and can be easily integrated into various systems within the enterprise or a unified login authentication gateway.

Is JAP commercially available?
JAP is based on the LGPL 3.0 protocol. Commercial use is divided into the following two situations:

The LGPL allows commercial software to be used by linking in a class library without the need for open source commercial software code. This allows open source code under the LGPL agreement to be referenced, published and sold by commercial software as a class library.
If the code of the LGPL agreement is modified or derived, all the modified code, the additional code involving the modified part and the derived code must adopt the LGPL agreement. Therefore, the open source code under the LGPL agreement is not suitable for use in commercial software for secondary development through modification and derivative methods.
4. What do we need?
Our vision (in an open source way, benefiting from the open source community, empowering developers. Make it an indispensable "infrastructure" in the developer ecosystem, with a view to forming new technical standards) determines that we are about to go The difficulty of this road is undoubtedly huge.

We not only want to promote this work to many domestic developers, organizations and corporate users, so that they can enjoy the convenience brought by open source; we also want to promote this work to a wider space, to the world, and make more Many developers, organizations, and companies understand and use this project and benefit from it.

Now that we have chosen open source, chosen dedication, and chosen the road that will "go all the way to black", we need to be able to go on forever. But how long and lonely is the road to open source, "the road is long and long, I will search up and down".

We know that it is not enough to promote this project and benefit developers by our own strength. We are also convinced that only by using the power of the team and brainstorming can create a truly outstanding, truly popular, Truly advertised top projects that can stand in the open source forest! So we need to find some sincere, like-minded and reliable partners and comrades-in-arms.

Just like the point I expressed when I shared JustAuth live broadcast (Review: A comprehensive introduction of JustAuth from the table to the inside): It is a kind of happiness to do something you like with a group of like-minded friends. Coincidentally, Zhang Lei, the founder and CEO of Hillhouse Capital, also mentioned a similar point: Hillhouse Capital Zhang Lei: Find a bunch of people you like, who are truly reliable, and do interesting things together.

Yes, all of what we are going to do comes from our love for technology, love for open source, and love for domestic open source business. Therefore, we also need to find people who have the same interests, hobbies, and goals as us to accomplish this meaningful thing together.

If you are also interested in JAP, please send us the following information:

Personal name, email (email or mobile phone)
personal open source homepage (Gitee or Github)
personal description, such as which open source projects have been done or which well-known open source projects have participated in.
Send an email to: [email protected]

For more details, please refer to the link to JAP Document Center

5. Community-related
We will have high standards and requirements for our core community partners. If you want to join our core team, if you want to participate in the JAP project community, please read the following carefully:

Member requirements
Basic requirements of all members
Respect and love open source. Respect is the prerequisite, and love is the goal.
Unity, friendliness and willingness to collaborate.
Love technology and use technology well.

Requirements for core members
If you want to be a core member of the community, please meet the following conditions:

You need at least one open source star project
with a number of over 1k. Have experience in open source community participation, maintenance, and management
. Have personal mature views, opinions or wishes on identity authentication related content
...
How to become a core member
if the above conditions are met (core member requirements) , Please send an email to our official mailbox ([email protected]) according to the following format:
name
personal website (if any)
open source project address (not limited to Github, Gitee, Bitbucket, etc.)
Why should you join the community core team (personal brief Note)
If you do not meet the above conditions and still want to join our core team, please briefly describe your personal resume and send it to our official email: [email protected]
Member benefits
Basic member benefits
enjoy the official nomination of the co-creation project right.
Enjoy priority participation rights and discounted tickets (if any) for all official profit-making activities based on the co-creation project (including but not limited to technical conferences, salons, corporate training, etc.).

Core member benefits
All profits attributed to the project (including but not limited to technical support, technical services, etc.) are uniformly distributed in accordance with the content and quality of the contribution.
According to the content and quality of the contribution, you will always enjoy all the "Title" of the co-creation project, and you can use all the rights (signature rights, etc.) of the project under the premise of reasonable and legal compliance.
Free participation rights for all official profit activities based on the project (including but not limited to technical conferences, salons, corporate training, etc.).
Share "community power" with other core members.
Enjoy preferential rights for all products of Beijing Fujie Technology Co., Ltd. Including but not limited to: free use, official coupons, etc.

Violating items
Maliciously alter or delete the project code.
Maliciously disrupt the community.
Post verbal abuse, discrimination, hatred, anti-politics, etc.
Based on this co-creation project, after deleting the license, privately "open the second" (open source again).
Unite with other core members to exercise community power in the form of small gangs to achieve their own goals and undermine the peace of the community.

Community power
is jointly owned by core members.

Have the right to vote on the code and files contributed by ordinary members (participants, contributors) of the project (the right to approve or reject the submission request).
Have the right to vote on the development plan of the project.
Enjoy the right to recall the core members of the project (only for members who violate the rules).

Community planning To
form a team (community) to
find core members, it is necessary to meet the “core member requirements” mentioned above.
Build the JAP brand
Coding
Coding
Coding
Open source community evangelism
Looking for capital investment
Broadening overseas scenarios
Complete vision

Guess you like

Origin blog.csdn.net/gumenghua_com1/article/details/112860569